[clang] [clang] [Headers] Don't use unreserved name in avx512fp16intrin.h (PR #98478)
Martin Storsjö via cfe-commits
cfe-commits at lists.llvm.org
Fri Oct 3 01:42:34 PDT 2025
mstorsjo wrote:
> We already have header test coverage, and `clang\test\Headers\x86-intrinsics-headers-clean.cpp` in particular is there to catch this kind of thing:
>
> https://github.com/RKSimon/llvm-project/blob/7eb5c08ac3a5bc524a5fe4e2e91db3a5b1ffe3cd/clang/test/Headers/x86-intrinsics-headers-clean.cpp#L7-L9
>
> Are there any other warnings that we can add to help catch this?
I'm not sure if there are warning in Clang proper; @AaronBallman 's comment above suggested using https://clang.llvm.org/extra/clang-tidy/checks/bugprone/reserved-identifier.html. The libcxx testcase, https://github.com/llvm/llvm-project/blob/main/libcxx/test/libcxx/system_reserved_names.gen.py, uses a bunch of defines of every known potentially problematic symbol name, before testing including the header - e.g. like this:
```c++
#define SYSTEM_RESERVED_NAME This name should not be used in libc++
#define A SYSTEM_RESERVED_NAME
#define Arg SYSTEM_RESERVED_NAME
#define Args SYSTEM_RESERVED_NAME
#define As SYSTEM_RESERVED_NAME
#define B SYSTEM_RESERVED_NAME
#define Bs SYSTEM_RESERVED_NAME
#define C SYSTEM_RESERVED_NAME
#define Cp SYSTEM_RESERVED_NAME
#define Cs SYSTEM_RESERVED_NAME
...
```
https://github.com/llvm/llvm-project/pull/98478
More information about the cfe-commits
mailing list