[clang] [C2y] Support WG14 N3457, the __COUNTER__ macro (PR #162662)
Aaron Ballman via cfe-commits
cfe-commits at lists.llvm.org
Wed Oct 15 10:12:51 PDT 2025
AaronBallman wrote:
> The CI failures are because third-party/benchmark are compiled with `-pedantic -Werror` and they use `__COUNTER__`, which is an extension outside of C2y that's now being diagnosed.
>
> I think the correct fix there is to check for C2y in:
>
> https://github.com/llvm/llvm-project/blob/e160b2a03c44f254d80287d74026ddacd2868089/third-party/benchmark/include/benchmark/benchmark.h#L1465
>
> However, this is in third-party and I'm not certain whether fixing it upstream will cause other issues when we pull the changes down (it's been over a year since we updated this dependency). Certainly expanding `BENCHMARK_PRIVATE_UNIQUE_ID ` to `__COUNTER__` will emit the same diagnostic. So it's a bit odd for the project to use `-pedantic -Werror` while using extensions like `__COUNTER__` in the first place. CC @rnk for some opinions on the right way to proceed here.
I've filed https://github.com/google/benchmark/issues/2057 in the meantime
https://github.com/llvm/llvm-project/pull/162662
More information about the cfe-commits
mailing list