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

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2016-09-19
     Ever confirmed|0                           |1

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> ---
The problem is the use of is_literal_type in _Uninitialized:

  template<typename _Type, bool __is_literal = std::is_literal_type_v<_Type>>
    struct _Uninitialized;

That assumes that a literal type is trivially default-constructible, but that
isn't necessarily true.

std::string_view is a literal type, but is not trivially default constructible.

Is literal type the correct condition? Should it be trivially default
constructible and trivially destructible?

Reply via email to