erichkeane accepted this revision. erichkeane added inline comments. This revision is now accepted and ready to land.
================ Comment at: clang/lib/Headers/stddef.h:108 + __STDC_VERSION__ >= 202000L +#define unreachable() __builtin_unreachable() +#endif /* defined(__need_STDDEF_H_misc) && >= C23 */ ---------------- aaron.ballman wrote: > erichkeane wrote: > > Is this REALLY required to be a macro by standard? Is it so they don't > > have to steal the word/can do #undef? This is going to result in a worse > > diagnostic here any time we diagnose on this line. > Yes, it's required to be a macro by the C standard. According to my personal > notes: > > This led us up to a preference poll, does WG14 prefer the syntax variant over > the macro variant in N2826? 3/12/5 (no consensus). Does WG14 prefer to put > the macro into <stddef.h> as in N2826 in C23? 11/2/7 (consensus). Does WG14 > want to adopt the unreachable feature Change 5 & 6 with stddef.h in place of > HEADER.h into C23? 13/2/6 (consensus). > > I don't think the diagnostic behavior here will be any different than for > `offsetof` (defined a few lines below), right? `offsetof` is what made me ask this question :D I guess we do the whole 'macro-like' escape in other places, but everything here is already crap, so I guess this is no different. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143430/new/ https://reviews.llvm.org/D143430 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits