summaryrefslogtreecommitdiffstats
path: root/clang/lib/Sema/SemaDecl.cpp
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2008-12-18 21:49:58 +0000
committerDouglas Gregor <dgregor@apple.com>2008-12-18 21:49:58 +0000
commitb04675d112983e1b45802a0a767d06d28f3753de (patch)
tree874e1e01c799b3566b0b330fc38940c21b34a175 /clang/lib/Sema/SemaDecl.cpp
parent998fd29ce175f4638cc536676e12d29e1afff64c (diff)
downloadbcm5719-llvm-b04675d112983e1b45802a0a767d06d28f3753de.tar.gz
bcm5719-llvm-b04675d112983e1b45802a0a767d06d28f3753de.zip
Don't check initializers when there are dependent types or type-dependent expressions involved
llvm-svn: 61212
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 511103fa751..925a7bb29b5 100644
--- a/clang/lib/Sema/SemaDecl.cpp
+++ b/clang/lib/Sema/SemaDecl.cpp
@@ -787,6 +787,9 @@ StringLiteral *Sema::IsStringLiteralInit(Expr *Init, QualType DeclType) {
bool Sema::CheckInitializerTypes(Expr *&Init, QualType &DeclType,
SourceLocation InitLoc,
DeclarationName InitEntity) {
+ if (DeclType->isDependentType() || Init->isTypeDependent())
+ return false;
+
// C++ [dcl.init.ref]p1:
// A variable declared to be a T&, that is "reference to type T"
// (8.3.2), shall be initialized by an object, or function, of
OpenPOWER on IntegriCloud