http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46134
--- Comment #6 from Jonathan Wakely <redi at gcc dot gnu.org> 2010-11-02 12:33:17 UTC --- (In reply to comment #5) > constexpr > unique_ptr() : _M_t(pointer(), __uninitialized_deleter()) { } IIUC since that tuple constructor is not constexpr, that makes this unique_ptr constructor not a constexpr constructor either.