diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2018-08-11 16:29:35 +0000 | 
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2018-08-11 16:29:35 +0000 | 
| commit | 46faa67da1d7e9450e8fa363f6633e2c68e33ff1 (patch) | |
| tree | ba7f8dbcd8358d07c15d1da6c2c2cc38f0febeb6 /lib/Sema | |
| parent | 874094833caedbee43fd17cca164dec53d500bdc (diff) | |
Diffstat (limited to 'lib/Sema')
| -rw-r--r-- | lib/Sema/SemaExprCXX.cpp | 10 | 
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/Sema/SemaExprCXX.cpp b/lib/Sema/SemaExprCXX.cpp index a1168fa34d56b..7a8f2d3f4702b 100644 --- a/lib/Sema/SemaExprCXX.cpp +++ b/lib/Sema/SemaExprCXX.cpp @@ -113,9 +113,15 @@ ParsedType Sema::getConstructorName(IdentifierInfo &II,        break;      }    } -  if (!InjectedClassName && CurClass->isInvalidDecl()) +  if (!InjectedClassName) { +    if (!CurClass->isInvalidDecl()) { +      // FIXME: RequireCompleteDeclContext doesn't check dependent contexts +      // properly. Work around it here for now. +      Diag(SS.getLastQualifierNameLoc(), +           diag::err_incomplete_nested_name_spec) << CurClass << SS.getRange(); +    }      return ParsedType(); -  assert(InjectedClassName && "couldn't find injected class name"); +  }    QualType T = Context.getTypeDeclType(InjectedClassName);    DiagnoseUseOfDecl(InjectedClassName, NameLoc);  | 
