brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · fe4f42a Raw
57 lines · cpp
1// RUN: %clang_cc1 -verify %s2 3// Some of the diagnostics produce 'did you mean?' suggestions. We don't care4// which ones for the purpose of this test.5// expected-note@* 0+{{here}}6 7struct A *f();8using Test_A = A;9 10void f(struct B*);11using Test_B = B;12 13struct C;14using Test_C = C;15 16struct X {17  struct D *f();18  void f(struct E*);19  struct F;20  friend struct G;21};22using Test_D = D;23using Test_XD = X::D; // expected-error {{no type named 'D' in 'X'}}24using Test_E = E;25using Test_XE = X::E; // expected-error {{no type named 'E' in 'X'}}26using Test_F = F; // expected-error {{unknown type name 'F'}}27using Test_XF = X::F;28using Test_G = G; // expected-error {{unknown type name 'G'}}29using Test_XG = X::G; // expected-error {{no type named 'G' in 'X'}}30 31void g() {32  {33    struct X {34      struct H *f();35      void f(struct I*);36      struct J;37      friend struct K;38    };39    using Test_H = H;40    using Test_XH = X::H; // expected-error {{no type named}}41    using Test_I = I;42    using Test_XI = X::I; // expected-error {{no type named}}43    using Test_J = J; // expected-error {{unknown type name}}44    using Test_XJ = X::J;45    using Test_K = K; // expected-error {{unknown type name}}46    using Test_XK = X::K; // expected-error {{no type named}}47  }48  using Test_H = H; // expected-error {{unknown type name}}49  using Test_I = I; // expected-error {{unknown type name}}50  using Test_J = J; // expected-error {{unknown type name}}51  using Test_K = K; // expected-error {{unknown type name}}52}53using Test_H = H; // expected-error {{unknown type name}}54using Test_I = I; // expected-error {{unknown type name}}55using Test_J = J; // expected-error {{unknown type name}}56using Test_K = K; // expected-error {{unknown type name}}57