[PATCH] D24508: PR28752: Do not instantiate var decls which are not visible.
Richard Smith via cfe-commits
cfe-commits at lists.llvm.org
Fri Oct 14 14:52:54 PDT 2016
rsmith added a comment.
I reverted this in r284081, and relanded with fixes described here as r284284.
================
Comment at: lib/Sema/SemaDecl.cpp:9712
+
+ // Demote the newly parsed definition to a fake declaration.
+ if (!VDecl->isThisDeclarationADemotedDefinition())
----------------
We also need to do this work when MergeVarDecls encounters the same condition.
================
Comment at: lib/Serialization/ASTReaderDecl.cpp:3087
+ CurD->isThisDeclarationADefinition()) {
+ VD->demoteThisDefinitionToDeclaration();
+ break;
----------------
When we do this, we need to tell the ASTContext we merged the definitions, so that the old definition will be made visible whenever the new one is.
https://reviews.llvm.org/D24508
More information about the cfe-commits
mailing list