1 //===----------------------------------------------------------------------===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 #ifndef TEST_SUPPORT_TYPE_CLASSIFICATION_H 9 #define TEST_SUPPORT_TYPE_CLASSIFICATION_H 10 11 #include "copyable.h" 12 13 struct no_default_ctor { 14 no_default_ctor(int); 15 }; 16 struct derived_from_non_default_initializable : no_default_ctor {}; 17 struct has_non_default_initializable { 18 no_default_ctor x; 19 }; 20 21 struct deleted_default_ctor { 22 deleted_default_ctor() = delete; 23 }; 24 struct derived_from_deleted_default_ctor : deleted_default_ctor {}; 25 struct has_deleted_default_ctor { 26 deleted_default_ctor x; 27 }; 28 29 #endif // TEST_SUPPORT_TYPE_CLASSIFICATION_H 30