diff options
author | John McCall <rjmccall@apple.com> | 2010-08-17 21:27:17 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2010-08-17 21:27:17 +0000 |
commit | ec8045d3f0375302eadaa63deb373bacaf25a569 (patch) | |
tree | 7ff7d615276f2a81884142b69b1d729d02c4d236 /lib/Sema/TreeTransform.h | |
parent | 11e6f610916437c5e67065533f5ecd98bc56794d (diff) |
Implicit decl ref expressions might not have name locations; don't silently
fail to instantiate them.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@111293 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/TreeTransform.h')
-rw-r--r-- | lib/Sema/TreeTransform.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/Sema/TreeTransform.h b/lib/Sema/TreeTransform.h index 2f8d075c2a..fc6c7f08e0 100644 --- a/lib/Sema/TreeTransform.h +++ b/lib/Sema/TreeTransform.h @@ -4214,10 +4214,12 @@ TreeTransform<Derived>::TransformDeclRefExpr(DeclRefExpr *E) { if (!ND) return SemaRef.ExprError(); - DeclarationNameInfo NameInfo - = getDerived().TransformDeclarationNameInfo(E->getNameInfo()); - if (!NameInfo.getName()) - return SemaRef.ExprError(); + DeclarationNameInfo NameInfo = E->getNameInfo(); + if (NameInfo.getName()) { + NameInfo = getDerived().TransformDeclarationNameInfo(NameInfo); + if (!NameInfo.getName()) + return SemaRef.ExprError(); + } if (!getDerived().AlwaysRebuild() && Qualifier == E->getQualifier() && |