diff options
author | Chris Lattner <sabre@nondot.org> | 2008-12-13 18:58:59 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-12-13 18:58:59 +0000 |
commit | 71e38c48609b3502d24a47d39a21f1e73402a0e1 (patch) | |
tree | 92c58da74a445e9a231c1d23e51428027d8b54c1 | |
parent | 798d119415323ebcd029ffe1e0fb442a4ca8adbb (diff) |
disable Anders' recent VLA patch, this fixes PR3209.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60989 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/CodeGen/CGDecl.cpp | 9 | ||||
-rw-r--r-- | lib/CodeGen/CGExprScalar.cpp | 4 |
2 files changed, 11 insertions, 2 deletions
diff --git a/lib/CodeGen/CGDecl.cpp b/lib/CodeGen/CGDecl.cpp index 62684bae49..1c72ba1228 100644 --- a/lib/CodeGen/CGDecl.cpp +++ b/lib/CodeGen/CGDecl.cpp @@ -160,6 +160,15 @@ void CodeGenFunction::EmitLocalBlockVarDecl(const VarDecl &D) { D.getStorageClass() == VarDecl::Register ? ".reg." : ".auto."; DeclPtr = GenerateStaticBlockVarDecl(D, true, Class); } + } else if (1) { + // FIXME: The code below is disabled because is causes a regression in the + // testsuite. + CGM.ErrorUnsupported(&D, "variable-length array"); + + const llvm::Type *LTy = ConvertType(Ty); + llvm::AllocaInst *Alloc = + CreateTempAlloca(LTy, D.getIdentifier()->getName()); + DeclPtr = Alloc; } else { const VariableArrayType *VAT = getContext().getAsVariableArrayType(Ty); diff --git a/lib/CodeGen/CGExprScalar.cpp b/lib/CodeGen/CGExprScalar.cpp index 857a40e6c8..ffb5164782 100644 --- a/lib/CodeGen/CGExprScalar.cpp +++ b/lib/CodeGen/CGExprScalar.cpp @@ -667,8 +667,8 @@ ScalarExprEmitter::VisitSizeOfAlignOfExpr(const SizeOfAlignOfExpr *E) { CGF.getContext().getAsVariableArrayType(TypeToSize)) { if (E->isSizeOf()) return CGF.GetVLASize(VAT); - else - assert(0 && "alignof VLAs not implemented yet"); + // FIXME: This should be an UNSUPPORTED error. + assert(0 && "alignof VLAs not implemented yet"); } std::pair<uint64_t, unsigned> Info = CGF.getContext().getTypeInfo(TypeToSize); |