aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/CGExprConstant.cpp
diff options
context:
space:
mode:
authorSebastian Redl <sebastian.redl@getdesigned.at>2012-02-25 20:51:20 +0000
committerSebastian Redl <sebastian.redl@getdesigned.at>2012-02-25 20:51:20 +0000
commit19b1a6eb2c90fab7cefe74bea5b6de490b65ac9d (patch)
tree1a0f6ea234bd4d6a3d4e8a523d0aad37d967ebba /lib/CodeGen/CGExprConstant.cpp
parentbabcf9d04f4ed9d7ac96812e42c9e8fc0f1ae2c2 (diff)
CodeGen support for global variables of type std::initializer_list<X>.
This emits a backing array with internal linkage and fills it with data, then has the initializer_list point at the array. Dynamic initialization and global destructors are correctly supported. What doesn't work is nested initializer_lists. I have no idea how to get them to work, either. However, these should be very rare, and so I'll just call it a known bug and declare generalized initializers DONE! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@151457 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGExprConstant.cpp')
-rw-r--r--lib/CodeGen/CGExprConstant.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/CodeGen/CGExprConstant.cpp b/lib/CodeGen/CGExprConstant.cpp
index a074466ec5..2803640bda 100644
--- a/lib/CodeGen/CGExprConstant.cpp
+++ b/lib/CodeGen/CGExprConstant.cpp
@@ -369,7 +369,7 @@ void ConstStructBuilder::ConvertStructToPacked() {
bool ConstStructBuilder::Build(InitListExpr *ILE) {
if (ILE->initializesStdInitializerList()) {
- CGM.ErrorUnsupported(ILE, "global std::initializer_list");
+ //CGM.ErrorUnsupported(ILE, "global std::initializer_list");
return false;
}