https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110617
Bug ID: 110617 Summary: RFE: Add a diagnostic-only variant of nonnull attribute Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: xry111 at gcc dot gnu.org Target Milestone: --- Currently nonnull serves as both a diagnostic attribute and an optimization attribute. But sometimes we want only the effect for diagnostic, but not the effect for code generation. For example, Glibc developers implements many functions as "crash the program immediately if an unexpected NULL pointer is passed" [1]. So it would be useful to make the potential crash detectable via -Wnonnull and/or -Wanalyzer-null-argument. However they don't like the nonnull attribute on the function prototype, because the nonnull attribute may cause the optimizer to break their "immediately crash" design [2]. I'm not sure how to name this variant of nonnull precisely. (Maybe "hate_null or something?)