summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaDecl.cpp
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2011-12-06 00:10:34 +0000
committerEli Friedman <eli.friedman@gmail.com>2011-12-06 00:10:34 +0000
commit7c6515a653b1458b7f3bbbb4dcd0e9aa44a01c33 (patch)
tree9c28063843abddee28cae2149e66747cdf73322c /clang/lib/Sema/SemaDecl.cpp
parent18e2fe47fa9a9a470c55837ed097bc07948b65aa (diff)
downloadbcm5719-llvm-7c6515a653b1458b7f3bbbb4dcd0e9aa44a01c33.tar.gz
bcm5719-llvm-7c6515a653b1458b7f3bbbb4dcd0e9aa44a01c33.zip
Make sure we perform lvalue-to-rvalue conversions for enum initializers. PR11484.
llvm-svn: 145874
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
-rw-r--r--clang/lib/Sema/SemaDecl.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp
index fdb2cf5d964..c90b7492a2f 100644
--- a/clang/lib/Sema/SemaDecl.cpp
+++ b/clang/lib/Sema/SemaDecl.cpp
@@ -9449,6 +9449,9 @@ EnumConstantDecl *Sema::CheckEnumConstant(EnumDecl *Enum,
if (Val && DiagnoseUnexpandedParameterPack(Val, UPPC_EnumeratorValue))
Val = 0;
+ if (Val)
+ Val = DefaultLvalueConversion(Val).take();
+
if (Val) {
if (Enum->isDependentType() || Val->isTypeDependent())
EltTy = Context.DependentTy;
OpenPOWER on IntegriCloud