https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109891

--- Comment #9 from Michel Morin <mimomorin at gmail dot com> ---
> (which even mentions the std::string((const char*)nullptr) case):
> https://gcc.gnu.org/onlinedocs/libstdc++/manual/debug_mode_semantics.html

Oh, that's good to know. Understood that PEDASSERT fits better.

> can we add a "pednonnull" attribute or something to produce a -Wnonnull 
> warning like the nonnull attribute but w/o affecting code generation as well?

I think such an attribute (like Clang's _Nonnull) would be a nice addition. So
I grepped Nonnull on libc++, but strangely there are __no__ uses of
_Nonnull/__nonnull. I only found a few __gnu__::__nonnull__ in
__memory_resource/memory_resource.h. In libc++, std::string constructors have
assertions for nullptr check, but there are no attributes.

Reply via email to