[all-commits] [llvm/llvm-project] 29d447: [clang][modules] stdarg.h and stddef.h shouldn't d...

Ian Anderson via All-commits all-commits at lists.llvm.org
Mon May 6 15:56:02 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 29d447a6e446e7fd78bd28af28bbf7dd377ade10
      https://github.com/llvm/llvm-project/commit/29d447a6e446e7fd78bd28af28bbf7dd377ade10
  Author: Ian Anderson <iana at apple.com>
  Date:   2024-05-06 (Mon, 06 May 2024)

  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_header_macro.h
    A clang/lib/Headers/__stddef_header_macro.h
    M clang/lib/Headers/module.modulemap
    M clang/lib/Headers/stdarg.h
    M clang/lib/Headers/stddef.h
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn

  Log Message:
  -----------
  [clang][modules] stdarg.h and stddef.h shouldn't directly declare anything (#90676)

stdarg.h and especially stddef.h are textual and so everything they
declare gets precompiled into all of their clients' pcm files. They
shouldn't directly declare anything though, their purpose is to select
what submodules get imported, and not to add duplicate declarations to
all of their clients. Make it so that they always ignore their header
guards, even without modules, and declare them in separate header files
so that they only go into the stdarg/stddef pcms. Still declare them in
case clients rely on them.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list