eliminate a mutable global variable, use raw_ostream::indent instead of
authorChris Lattner <sabre@nondot.org>
Mon, 21 Jun 2010 23:14:47 +0000 (23:14 +0000)
committerChris Lattner <sabre@nondot.org>
Mon, 21 Jun 2010 23:14:47 +0000 (23:14 +0000)
rolling our own.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106501 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/CppBackend/CPPBackend.cpp

index df1947e2e24504b849272a9afeffe7778300eb3c..00f3cafb707a18dd6ce1c63621b63108814b578e 100644 (file)
@@ -99,6 +99,7 @@ namespace {
     ValueSet DefinedValues;
     ForwardRefMap ForwardRefs;
     bool is_inline;
+    unsigned indent_level;
 
   public:
     static char ID;
@@ -120,6 +121,11 @@ namespace {
 
     void error(const std::string& msg);
 
+    
+    formatted_raw_ostream& nl(formatted_raw_ostream &Out, int delta = 0);
+    inline void in() { indent_level++; }
+    inline void out() { if (indent_level >0) indent_level--; }
+    
   private:
     void printLinkageType(GlobalValue::LinkageTypes LT);
     void printVisibilityType(GlobalValue::VisibilityTypes VisTypes);
@@ -155,20 +161,14 @@ namespace {
   };
 } // end anonymous namespace.
 
-// FIXME: Shouldn't be using globals for this.
-static unsigned indent_level = 0;
-static formatted_raw_ostream& nl(formatted_raw_ostream &Out, int delta = 0) {
-  Out << "\n";
+formatted_raw_ostream &CppWriter::nl(formatted_raw_ostream &Out, int delta) {
+  Out << '\n';
   if (delta >= 0 || indent_level >= unsigned(-delta))
     indent_level += delta;
-  for (unsigned i = 0; i < indent_level; ++i)
-    Out << "  ";
+  Out.indent(indent_level);
   return Out;
 }
 
-static inline void in() { indent_level++; }
-static inline void out() { if (indent_level >0) indent_level--; }
-
 static inline void sanitize(std::string &str) {
   for (size_t i = 0; i < str.length(); ++i)
     if (!isalnum(str[i]) && str[i] != '_')