aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/CGExprScalar.cpp
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2009-12-10 22:40:32 +0000
committerEli Friedman <eli.friedman@gmail.com>2009-12-10 22:40:32 +0000
commit9dfebdcdcdcc0cad8a3ef205d33b84f33233072b (patch)
tree12b12923bb52c497b1333b86e1a84e7ebefc0f5e /lib/CodeGen/CGExprScalar.cpp
parent29a7f3342c3c6dd15d914c61ae22246c36d51ce7 (diff)
Support unary type traits in a scalar context. Not that I've actually seen
this construct, but might as well for completeness. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91071 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGExprScalar.cpp')
-rw-r--r--lib/CodeGen/CGExprScalar.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/CodeGen/CGExprScalar.cpp b/lib/CodeGen/CGExprScalar.cpp
index 1ce4c5aef4..dfa5b2026c 100644
--- a/lib/CodeGen/CGExprScalar.cpp
+++ b/lib/CodeGen/CGExprScalar.cpp
@@ -263,6 +263,10 @@ public:
CGF.EmitCXXDeleteExpr(E);
return 0;
}
+ Value *VisitUnaryTypeTraitExpr(const UnaryTypeTraitExpr *E) {
+ return llvm::ConstantInt::get(Builder.getInt1Ty(),
+ E->EvaluateTrait(CGF.getContext()));
+ }
Value *VisitCXXPseudoDestructorExpr(const CXXPseudoDestructorExpr *E) {
// C++ [expr.pseudo]p1: