1d0b4dd65SRichard Smith // RUN: %clang_cc1 -pedantic-errors -std=c++98 -emit-pch %s -o %t 2d0b4dd65SRichard Smith // RUN: %clang_cc1 -pedantic-errors -std=c++98 -include-pch %t -verify %s 3d0b4dd65SRichard Smith 4d0b4dd65SRichard Smith // RUN: %clang_cc1 -pedantic-errors -std=c++11 -emit-pch %s -o %t-cxx11 5d0b4dd65SRichard Smith // RUN: %clang_cc1 -pedantic-errors -std=c++11 -include-pch %t-cxx11 -verify %s 6d0b4dd65SRichard Smith 786c0d061SRichard Smith // RUN: %clang_cc1 -pedantic-errors -std=c++98 -emit-pch %s -o %t -fmodules 886c0d061SRichard Smith // RUN: %clang_cc1 -pedantic-errors -std=c++98 -include-pch %t -verify %s -fmodules 986c0d061SRichard Smith 10d0b4dd65SRichard Smith #ifndef HEADER_INCLUDED 11d0b4dd65SRichard Smith 12d0b4dd65SRichard Smith #define HEADER_INCLUDED 13d0b4dd65SRichard Smith extern const int a; 14d0b4dd65SRichard Smith const int b = a; 15d0b4dd65SRichard Smith 16d0b4dd65SRichard Smith #else 17d0b4dd65SRichard Smith 18d0b4dd65SRichard Smith const int a = 5; 19*552c6c23SRichard Smith typedef int T[b]; // expected-error 2{{variable length array}} expected-note {{initializer of 'b'}} 206f339367SRichard Smith // expected-note@14 {{here}} 21d0b4dd65SRichard Smith typedef int T[5]; 22d0b4dd65SRichard Smith 23d0b4dd65SRichard Smith #endif 24