https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68905
Bug ID: 68905 Summary: __is_trivially_copyable returns True for volatile class types. Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: eric at efcs dot ca Target Milestone: --- Created attachment 37034 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=37034&action=edit reproducer.cpp The __is_trivially_copyable builtin returns true for volatile qualified trivially copyable class types. However the current C++ draft says: 3.9[basic.types] p9 says: > Cv-unqualified scalar types, trivially copyable class types (Clause 9), > arrays of such types, and non-volatile const-qualified versions of these > types (3.9.3) are collectively called trivially copyable types. I believe it should return false for any volatile qualified type.