]> granicus.if.org Git - clang/commit
Don't build invalid AST nodes during recovery
authorReid Kleckner <reid@kleckner.net>
Wed, 17 Dec 2014 19:34:15 +0000 (19:34 +0000)
committerReid Kleckner <reid@kleckner.net>
Wed, 17 Dec 2014 19:34:15 +0000 (19:34 +0000)
commitc20063a2953bc57a6daf31f029010aa992191ae2
tree4289dca062bb4bb48d28a5a4f9a9375a0f8e4086
parent8e75e54f9d440b03cce34b3aecee4fd3ebd24ad1
Don't build invalid AST nodes during recovery

A DependentScopeDeclRefExpr should always have a nested name specifier.
During template instantiation, if we found that the named context was
incomplete, we would previously build a DependentScopeDeclRefExpr with
an empty qualifier.

This error recovery path has been asserting for some time. The other
error codepaths use ExprError, so we can do the same.

Fixes PR21864.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@224451 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Sema/SemaTemplate.cpp
test/SemaTemplate/instantiate-dependent-nested-name.cpp