teak-llvm/clang/test/Sema/cast-incomplete.c
Eli Friedman e98194d9e8 Check for casts to an incomplete type in C. Improves diagnostics for cast to
incomplete union (PR5692) and incomplete enum, and fixes obscure
accepts-invalid on cast to incomplete struct.

llvm-svn: 108630
2010-07-17 20:43:49 +00:00

15 lines
502 B
C

// RUN: %clang_cc1 -fsyntax-only %s -verify
// PR5692
enum x; // expected-note {{forward declaration}}
extern struct y a; // expected-note {{forward declaration}}
extern union z b; // expected-note 2 {{forward declaration}}
void foo() {
(enum x)1; // expected-error {{cast to incomplete type}}
(struct y)a; // expected-error {{cast to incomplete type}}
(union z)b; // expected-error {{cast to incomplete type}}
(union z)1; // expected-error {{cast to incomplete type}}
}