• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // -*- C++ -*-
2 //===----------------------------------------------------------------------===//
3 //
4 //                     The LLVM Compiler Infrastructure
5 //
6 // This file is dual licensed under the MIT and the University of Illinois Open
7 // Source Licenses. See LICENSE.TXT for details.
8 //
9 //===----------------------------------------------------------------------===//
10 
11 // UNSUPPORTED: c++98, c++03, c++11, c++14
12 
13 // <variant>
14 
15 // struct monostate {};
16 
17 #include <type_traits>
18 #include <variant>
19 
main()20 int main() {
21   using M = std::monostate;
22   static_assert(std::is_trivially_default_constructible<M>::value, "");
23   static_assert(std::is_trivially_copy_constructible<M>::value, "");
24   static_assert(std::is_trivially_copy_assignable<M>::value, "");
25   static_assert(std::is_trivially_destructible<M>::value, "");
26   constexpr M m{};
27   ((void)m);
28 }
29