[PATCH] D71818: reland "[DebugInfo] Support to emit debugInfo for extern variables"

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Dec 22 18:59:12 PST 2019


rnk added a comment.

You forgot to update MultiplexConsumer:

  diff --git a/clang/include/clang/Frontend/MultiplexConsumer.h b/clang/include/clang/Frontend/MultiplexConsumer.h
  index ca6ed8310ae..3054e184281 100644
  --- a/clang/include/clang/Frontend/MultiplexConsumer.h
  +++ b/clang/include/clang/Frontend/MultiplexConsumer.h
  @@ -65,6 +65,7 @@ public:
     void HandleTopLevelDeclInObjCContainer(DeclGroupRef D) override;
     void HandleImplicitImportDecl(ImportDecl *D) override;
     void CompleteTentativeDefinition(VarDecl *D) override;
  +  void CompleteExternalDeclaration(VarDecl *D) override;
     void AssignInheritanceModel(CXXRecordDecl *RD) override;
     void HandleVTable(CXXRecordDecl *RD) override;
     ASTMutationListener *GetASTMutationListener() override;
  diff --git a/clang/lib/Frontend/MultiplexConsumer.cpp b/clang/lib/Frontend/MultiplexConsumer.cpp
  index 04e896296c9..5abbb3a235b 100644
  --- a/clang/lib/Frontend/MultiplexConsumer.cpp
  +++ b/clang/lib/Frontend/MultiplexConsumer.cpp
  @@ -322,6 +322,11 @@ void MultiplexConsumer::CompleteTentativeDefinition(VarDecl *D) {
       Consumer->CompleteTentativeDefinition(D);
   }
   
  +void MultiplexConsumer::CompleteExternalDeclaration(VarDecl *D) {
  +  for (auto &Consumer : Consumers)
  +    Consumer->CompleteExternalDeclaration(D);
  +}
  +
   void MultiplexConsumer::AssignInheritanceModel(CXXRecordDecl *RD) {
     for (auto &Consumer : Consumers)
       Consumer->AssignInheritanceModel(RD);

That seems to fix this. I'm curious why my build of clang uses this.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D71818/new/

https://reviews.llvm.org/D71818





More information about the llvm-commits mailing list