[all-commits] [llvm/llvm-project] 680da4: [Headers][Modules] Make separate headers for the s...

Ian Anderson via All-commits all-commits at lists.llvm.org
Wed Aug 30 11:41:28 PDT 2023

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 680da4b5d7ec05a1e6656f2a7603a7b843268bab
  Author: Ian Anderson <iana at apple.com>
  Date:   2023-08-30 (Wed, 30 Aug 2023)

  Changed paths:
    M clang-tools-extra/clang-include-fixer/find-all-symbols/STLPostfixHeaderMap.cpp
    M clang-tools-extra/clangd/index/CanonicalIncludes.cpp
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/__stdarg___gnuc_va_list.h
    A clang/lib/Headers/__stdarg___va_copy.h
    A clang/lib/Headers/__stdarg_va_arg.h
    A clang/lib/Headers/__stdarg_va_copy.h
    A clang/lib/Headers/__stdarg_va_list.h
    A clang/lib/Headers/__stddef_null.h
    A clang/lib/Headers/__stddef_nullptr_t.h
    A clang/lib/Headers/__stddef_offsetof.h
    A clang/lib/Headers/__stddef_ptrdiff_t.h
    A clang/lib/Headers/__stddef_rsize_t.h
    A clang/lib/Headers/__stddef_size_t.h
    A clang/lib/Headers/__stddef_unreachable.h
    A clang/lib/Headers/__stddef_wchar_t.h
    A clang/lib/Headers/__stddef_wint_t.h
    M clang/lib/Headers/stdarg.h
    M clang/lib/Headers/stddef.h
    M clang/test/Headers/stddef.c
    M clang/test/Headers/stddefneeds.c
    M clang/test/Modules/stddef.c
    M compiler-rt/lib/gwp_asan/guarded_pool_allocator.h
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn

  Log Message:
  [Headers][Modules] Make separate headers for the stdarg.h and stddef.h pieces so that they can be modularized

stdarg.h and stddef.h have to be textual headers in their upcoming modules to support their `__needs_xxx` macros. That means that they won't get precompiled into their modules' pcm, and instead their declarations will go into every other pcm that uses them. For now that's ok since the type merger can handle the declarations in these headers, but it's suboptimal at best. Make separate headers for all of the pieces so that they can be properly modularized.

Reviewed By: aaron.ballman, ChuanqiXu

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

More information about the All-commits mailing list