Added VISIBILITY_HIDDEN to classes/structs in anonymous namespace.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45749 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/AST/CFG.cpp b/AST/CFG.cpp
index df0b12d..3be5f7c 100644
--- a/AST/CFG.cpp
+++ b/AST/CFG.cpp
@@ -20,6 +20,7 @@
#include "llvm/ADT/SmallPtrSet.h"
#include "llvm/Support/GraphWriter.h"
#include "llvm/Support/Streams.h"
+#include "llvm/Support/Compiler.h"
#include <iomanip>
#include <algorithm>
#include <sstream>
@@ -31,7 +32,7 @@
// SaveAndRestore - A utility class that uses RIIA to save and restore
// the value of a variable.
template<typename T>
-struct SaveAndRestore {
+struct VISIBILITY_HIDDEN SaveAndRestore {
SaveAndRestore(T& x) : X(x), old_value(x) {}
~SaveAndRestore() { X = old_value; }
T get() { return old_value; }
@@ -55,7 +56,7 @@
/// allows us to nicely capture implicit fall-throughs without extra
/// basic blocks.
///
-class CFGBuilder : public StmtVisitor<CFGBuilder,CFGBlock*> {
+class VISIBILITY_HIDDEN CFGBuilder : public StmtVisitor<CFGBuilder,CFGBlock*> {
CFG* cfg;
CFGBlock* Block;
CFGBlock* Succ;
@@ -1039,7 +1040,7 @@
namespace {
-class StmtPrinterHelper : public PrinterHelper {
+class VISIBILITY_HIDDEN StmtPrinterHelper : public PrinterHelper {
typedef llvm::DenseMap<Stmt*,std::pair<unsigned,unsigned> > StmtMapTy;
StmtMapTy StmtMap;
@@ -1078,9 +1079,9 @@
}
};
-class CFGBlockTerminatorPrint : public StmtVisitor<CFGBlockTerminatorPrint,
- void >
-{
+class VISIBILITY_HIDDEN CFGBlockTerminatorPrint
+ : public StmtVisitor<CFGBlockTerminatorPrint,void> {
+
std::ostream& OS;
StmtPrinterHelper* Helper;
public: