summaryrefslogtreecommitdiff
path: root/test/SemaCXX/type-definition-in-specifier.cpp
blob: a614e6c2812ec11b700924d930ab4db2ceb5088a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// RUN: %clang_cc1 -fsyntax-only -verify %s

struct S0;
struct S1;
struct S2;
struct S3;
struct S4;
struct S5;
struct S6;

struct S0 { int x; };

void f0() {
  typedef struct S1 { int x; } S1_typedef;

  (void)((struct S2 { int x; }*)0); // expected-error{{can not be defined}}

  struct S3 { int x; } s3;

  (void)static_cast<struct S4 { int x; } *>(0); // expected-error{{can not be defined}}
}

struct S5 { int x; } f1() { return S5(); } // expected-error{{result type}}

void f2(struct S6 { int x; } p); // expected-error{{parameter type}}