blob: 407da78e60b02a530f5cd037ba72f41db6ce6f61 [file] [log] [blame]
Erich Keane0ac95242017-09-18 21:28:55 +00001// RUN: %clang_cc1 %s -fsyntax-only -verify -std=c++11
2
3// Test reproduces a pair of crashes that were caused by code attempting
4// to materialize a default constructor's exception specifier.
5
6template <class T> struct A {
7 static T tab[];
8
9 const int M = UNDEFINED; // expected-error {{use of undeclared identifier}}
10
11 int main()
12 {
13 A<char> a;
14
15 return 0;
16 }
17};
18
19template <class T> struct B {
20 static T tab[];
21
22 // expected-error@+1 {{invalid application of 'sizeof' to an incomplete type}}
23 const int N = sizeof(B<char>::tab) / sizeof(char);
24
25 int main()
26 {
27 B<char> b;
28
29 return 0;
30 }
31};