From: Douglas Gregor Date: Thu, 18 Dec 2008 21:49:58 +0000 (+0000) Subject: Don't check initializers when there are dependent types or type-dependent expressions... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=264c8ed7edf26031c6854b6b92ab0d7774c13579;p=clang Don't check initializers when there are dependent types or type-dependent expressions involved git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61212 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Sema/SemaDecl.cpp b/lib/Sema/SemaDecl.cpp index 511103fa75..925a7bb29b 100644 --- a/lib/Sema/SemaDecl.cpp +++ b/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