// RUN: %clang_cc1 -fsyntax-only -verify %s
@protocol Foo;
Class T;
S;
id R;
void
// Test attempt to redefine 'id' in an incompatible fashion.
// rdar://11356439
typedef int id; // expected-error {{typedef redefinition with different types ('int' vs 'id')}}
id b;
typedef double id; // expected-error {{typedef redefinition with different types ('double' vs 'id')}}
typedef char *id; // expected-error {{typedef redefinition with different types ('char *' vs 'id')}}
typedef union U *id; // expected-error {{typedef redefinition with different types ('union U *' vs 'id')}}
void