diff options
Diffstat (limited to 'lib/Sema/SemaDecl.cpp')
-rw-r--r-- | lib/Sema/SemaDecl.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/Sema/SemaDecl.cpp b/lib/Sema/SemaDecl.cpp index 0396f520a8..dce1e129a5 100644 --- a/lib/Sema/SemaDecl.cpp +++ b/lib/Sema/SemaDecl.cpp @@ -1570,7 +1570,8 @@ bool Sema::CheckAddressConstantExpressionLValue(const Expr* Init) { } case Expr::CompoundLiteralExprClass: return cast<CompoundLiteralExpr>(Init)->isFileScope(); - case Expr::DeclRefExprClass: { + case Expr::DeclRefExprClass: + case Expr::QualifiedDeclRefExprClass: { const Decl *D = cast<DeclRefExpr>(Init)->getDecl(); if (const VarDecl *VD = dyn_cast<VarDecl>(D)) { if (VD->hasGlobalStorage()) @@ -1829,7 +1830,8 @@ bool Sema::CheckArithmeticConstantExpression(const Expr* Init) { InitializerElementNotConstant(Init); return true; } - case Expr::DeclRefExprClass: { + case Expr::DeclRefExprClass: + case Expr::QualifiedDeclRefExprClass: { const Decl *D = cast<DeclRefExpr>(Init)->getDecl(); if (isa<EnumConstantDecl>(D)) return false; |