[clang] [C2y] Implement WG14 N3344 (PR #115313)

Martin Storsjö via cfe-commits cfe-commits at lists.llvm.org
Fri Nov 8 01:36:18 PST 2024


mstorsjo wrote:

This change broke building Wine, which bundles the lcms2 library. The case there, which broke, seems to be somewhat different than what the paper talks about though. The paper talks about rejecting `int func(register void);`, but the case in lcms2 is `int func(register void *ptr);` which now also gets rejected.

I don't see the `register void *ptr` case mentioned in the paper at all. Is it intentional that this case now also is disallowed?

See https://github.com/mm2/Little-CMS/blob/lcms2.16/include/lcms2.h#L1311-L1317 for the full context of the breaking case (plus a dozen of more cases scattered around in the definition of static functions).

https://github.com/llvm/llvm-project/pull/115313


More information about the cfe-commits mailing list