summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2009-11-09 04:20:47 +0000
committerEli Friedman <eli.friedman@gmail.com>2009-11-09 04:20:47 +0000
commita72bf0fae867dfcc090b39a5ab9840e2da31f9ee (patch)
tree001db66a212d6b3e5d5aa4f7394207e01904845e /clang
parent1521c85c0469c69009356b589eea6dbff273b7a3 (diff)
downloadbcm5719-llvm-a72bf0fae867dfcc090b39a5ab9840e2da31f9ee.tar.gz
bcm5719-llvm-a72bf0fae867dfcc090b39a5ab9840e2da31f9ee.zip
Explicitly note that pre-inc/dec lvalues are not supported yet, so that it
doesn't crash. (Such expressions are valid in C++, but not in C.) llvm-svn: 86513
Diffstat (limited to 'clang')
-rw-r--r--clang/lib/CodeGen/CGExpr.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CGExpr.cpp b/clang/lib/CodeGen/CGExpr.cpp
index 15cb72e9fb8..63041fee823 100644
--- a/clang/lib/CodeGen/CGExpr.cpp
+++ b/clang/lib/CodeGen/CGExpr.cpp
@@ -919,13 +919,17 @@ LValue CodeGenFunction::EmitUnaryOpLValue(const UnaryOperator *E) {
return LV;
}
case UnaryOperator::Real:
- case UnaryOperator::Imag:
+ case UnaryOperator::Imag: {
LValue LV = EmitLValue(E->getSubExpr());
unsigned Idx = E->getOpcode() == UnaryOperator::Imag;
return LValue::MakeAddr(Builder.CreateStructGEP(LV.getAddress(),
Idx, "idx"),
MakeQualifiers(ExprTy));
}
+ case UnaryOperator::PreInc:
+ case UnaryOperator::PreDec:
+ return EmitUnsupportedLValue(E, "pre-inc/dec expression");
+ }
}
LValue CodeGenFunction::EmitStringLiteralLValue(const StringLiteral *E) {
OpenPOWER on IntegriCloud