]> granicus.if.org Git - clang/commitdiff
Added VISIBILITY_HIDDEN to classes/structs in anonymous namespace.
authorTed Kremenek <kremenek@apple.com>
Tue, 8 Jan 2008 18:15:10 +0000 (18:15 +0000)
committerTed Kremenek <kremenek@apple.com>
Tue, 8 Jan 2008 18:15:10 +0000 (18:15 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45749 91177308-0d34-0410-b5e6-96231b3b80d8

AST/CFG.cpp

index df0b12d1f60546e13805653734bb30c6c5c02b11..3be5f7cd4bab06139dff98c15cea03d55775c8da 100644 (file)
@@ -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 @@ namespace {
 // 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 @@ struct SaveAndRestore {
 ///  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 @@ CFG::~CFG() {
 
 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 @@ public:
   }
 };
 
-class CFGBlockTerminatorPrint : public StmtVisitor<CFGBlockTerminatorPrint,
-                                                    void > 
-{
+class VISIBILITY_HIDDEN CFGBlockTerminatorPrint
+  : public StmtVisitor<CFGBlockTerminatorPrint,void> {
+  
   std::ostream& OS;
   StmtPrinterHelper* Helper;
 public: