1 // { dg-do compile } 2 // { dg-options "-std=gnu++0x" } 3 4 // From N2235 5 6 // 1 7 struct A2 8 { 9 static const int eights = 888; 10 static constexpr int nines = 999; 11 }; 12 13 A2 a; 14 15 // 2 16 struct pixel 17 { 18 int x, y; 19 }; 20 constexpr pixel ur = { 1294, 1024 }; // OK 21 22 // p4 23 struct Length 24 { valLength25 explicit constexpr Length(int i = 0) : val(i) { } 26 private: 27 int val; 28 }; 29 myabs(int x)30constexpr int myabs(int x) 31 { return x < 0 ? -x : x; } // OK 32 33 Length l(myabs(-97)); // OK 34 35 // p6 36 class debug_flag 37 { 38 public: 39 explicit debug_flag(bool); 40 constexpr bool is_on(); // { dg-error "enclosing class .* not a literal type" } 41 private: 42 bool flag; 43 }; 44