[PATCH] D25678: [modules] Do not report missing definitions of demoted constexpr variable templates.This is a followup to regression introduced in r284284.This should fix our libstdc++ modules builds.

Richard Smith via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 18 10:49:46 PDT 2016

rsmith added inline comments.

Comment at: lib/Sema/SemaDecl.cpp:10129
+        !Var->isThisDeclarationADemotedDefinition()) {
+      assert(Var->isThisDeclarationADemotedDefinition() && getLangOpts().Modules
+             && "Demoting decls is only in the contest of modules!");
v.g.vassilev wrote:
> manmanren wrote:
> > Is the logic correct here? The if statement says !Var->isThisDeclarationADemotedDefinition(), and we then assert Var->isThisDeclarationADemotedDefinition() && getLangOpts().Modules.
> Oops, that is an old version of the patch. Uploading the new one.
Can you just remove this assertion entirely? I don't see why it's relevant to what this code is checking. If we had some other reason to demote, the logic here would still seem to be correct.


More information about the cfe-commits mailing list