diff --git a/clang/test/CXX/drs/dr14xx.cpp b/clang/test/CXX/drs/dr14xx.cpp --- a/clang/test/CXX/drs/dr14xx.cpp +++ b/clang/test/CXX/drs/dr14xx.cpp @@ -501,4 +501,16 @@ template int c<0, Ts...>; // expected-error {{not more specialized}} #endif } + +namespace dr1496 { // dr1496: no +#if __cplusplus >= 201103L +struct A { + A() = delete; +}; +// FIXME: 'A' should not be trivial because the class lacks at least one +// default constructor which is not deleted. +static_assert(__is_trivial(A), ""); +#endif +} + #endif diff --git a/clang/test/CXX/drs/dr17xx.cpp b/clang/test/CXX/drs/dr17xx.cpp --- a/clang/test/CXX/drs/dr17xx.cpp +++ b/clang/test/CXX/drs/dr17xx.cpp @@ -27,6 +27,18 @@ #endif } +namespace dr1734 { // dr1734: no +#if __cplusplus >= 201103L +struct A { + A(const A&) = delete; +}; +// FIXME: 'A' should not be trivially copyable because the class lacks at least +// one non-deleted copy constructor, move constructor, copy assignment +// operator, or move assignment operator. +static_assert(__is_trivially_copyable(A), ""); +#endif +} + namespace dr1736 { // dr1736: 3.9 #if __cplusplus >= 201103L struct S { diff --git a/clang/www/cxx_dr_status.html b/clang/www/cxx_dr_status.html --- a/clang/www/cxx_dr_status.html +++ b/clang/www/cxx_dr_status.html @@ -8790,7 +8790,7 @@ 1496 CD4 Triviality with deleted and missing default constructors - Unknown + No 1497 @@ -10218,7 +10218,7 @@ 1734 CD4 Nontrivial deleted copy functions - Unknown + No 1735