[all-commits] [llvm/llvm-project] 29a4ed: [clang][ASTImporter] Add VaList declaration to loo...

Balázs Kéri via All-commits all-commits at lists.llvm.org
Mon Mar 6 00:33:03 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 29a4ed80bb4c8aadc76718924f80a5f532b1ffce
      https://github.com/llvm/llvm-project/commit/29a4ed80bb4c8aadc76718924f80a5f532b1ffce
  Author: Balázs Kéri <1.int32 at gmail.com>
  Date:   2023-03-06 (Mon, 06 Mar 2023)

  Changed paths:
    M clang/lib/AST/ASTImporterLookupTable.cpp
    A clang/test/Import/cxx-valist/Inputs/I1.cpp
    A clang/test/Import/cxx-valist/test.cpp
    M clang/unittests/AST/ASTImporterTest.cpp

  Log Message:
  -----------
  [clang][ASTImporter] Add VaList declaration to lookup table.

The declaration of __builtin_va_list seems to be handled specially
by ASTContext and/or Sema. The normal AST traversal probably can
not find it, therefore it is not added to ASTImporterLookupTable.
If it is not added, errors can occur because a duplicated
VaList declaration is created at import. To fix the problem the
VaList declaration is added manually to ASTImporterLookupTable
at construction.
In special cases this declaration is inside a "invisible" 'std'
namespace that behaves the same way. This namespace must be added
to the table too.

Reviewed By: vabridgers, donat.nagy

Differential Revision: https://reviews.llvm.org/D144273




More information about the All-commits mailing list