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

--- Comment #2 from M Welinder <terra at gnome dot org> ---
IMHO, nullptr_t would not be an improvement here.  We would still have the
combination of:

(1) Correct usage causing a warning
(2) The warning hinting at using the incorrect nullptr instead.
(3) po<nullptr compiling with no error or even warning.

I think the current magic-pointer code could be improved with something like

    template<class T,std::enable_if_t<std::is_same_v<T,std::nullptr_t>>>
    bool operator< (..., T) = delete;

This would at least take care of (3).  (Template magic applied to resolve the
ambiguity of what to do with literal 0.  There might be a better way.)

Reply via email to