Fix the bug that would cause Python to crash at startup.

When emitting the static variables we need to make sure that the order is preserved. 
Fix this by making StaticDecls a std::list which has O(1) random removal.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61621 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/CodeGenModule.h b/lib/CodeGen/CodeGenModule.h
index 3f604dd..0bd0e2c 100644
--- a/lib/CodeGen/CodeGenModule.h
+++ b/lib/CodeGen/CodeGenModule.h
@@ -21,6 +21,8 @@
 
 #include "CGCall.h"
 
+#include <list>
+
 namespace llvm {
   class Module;
   class Constant;
@@ -97,7 +99,7 @@
   /// will lazily emit definitions for only the decls that were
   /// actually used.  This should contain only Function and Var decls,
   /// and only those which actually define something.
-  std::vector<const ValueDecl*> StaticDecls;
+  std::list<const ValueDecl*> StaticDecls;
   
   /// GlobalCtors - Store the list of global constructors and their
   /// respective priorities to be emitted when the translation unit is