Support initalisers for more than just int-typed static variables.
We now use the CodeGenModule logic for generating the constant
initialiser expression, so happily further initialiser fixes should
automatically work for statics as well.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44495 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/CodeGen/CodeGenModule.cpp b/CodeGen/CodeGenModule.cpp
index e4d0f47..171a70c 100644
--- a/CodeGen/CodeGenModule.cpp
+++ b/CodeGen/CodeGenModule.cpp
@@ -275,9 +275,8 @@
return 0;
}
-llvm::Constant *CodeGenModule::EmitGlobalInit(const FileVarDecl *D,
- llvm::GlobalVariable *GV) {
- return GenerateConstantExpr(D->getInit(), *this);
+llvm::Constant *CodeGenModule::EmitGlobalInit(const Expr *Expression) {
+ return GenerateConstantExpr(Expression, *this);
}
void CodeGenModule::EmitGlobalVar(const FileVarDecl *D) {
@@ -300,7 +299,7 @@
}
if (!Init)
- Init = EmitGlobalInit(D, GV);
+ Init = EmitGlobalInit(D->getInit());
assert(Init && "FIXME: Global variable initializers unimp!");