http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60168
--- Comment #3 from Ashish Sadanandan <ashish.sadanandan at gmail dot com> --- You are right, of course. Not a bug, but it's disappointing that it isn't. If that comparison were against a value initialized unique_ptr<T, D>::pointer, instead of nullptr, it'd allow unique_ptr to be used to manage any generic `handle` type, which may not meet the requirements of NullablePointer.