1 // RUN: %clang_cc1 -verify %s
2
3 // PR11925
4 int n;
5 int (&f())[n]; // expected-error {{function declaration cannot have variably modified type}}
6
7 namespace PR18581 {
8 template<typename T> struct pod {};
9 template<typename T> struct error {
10 typename T::error e; // expected-error {{cannot be used prior to '::'}}
11 };
12 struct incomplete; // expected-note {{forward declaration}}
13
f(int n)14 void f(int n) {
15 pod<int> a[n];
16 error<int> b[n]; // expected-note {{instantiation}}
17 incomplete c[n]; // expected-error {{incomplete}}
18 }
19 }
20
pr23151(int (&)[* ])21 void pr23151(int (&)[*]) { // expected-error {{variable length array must be bound in function definition}}
22 }
23