// RUN: %clang_cc1 -fsyntax-only -pedantic -verify %s
// RUN: %clang_cc1 -fsyntax-only -verify=expected,c -xc %s
typedef long Integer;
typedef enum : Integer Enumeration;
int array;
;
;
void
// <rdar://10381507>
typedef enum : long IntegerEnum;
int arr;
int arr1;
int arr2;
// <rdar://problem/10760113>
typedef enum : long long LongLongEnum;
int arr3;
typedef enum : Integer BaseEnum;
typedef enum : BaseEnum DerivedEnum; // expected-error {{non-integral type 'BaseEnum' is an invalid underlying type}}
// <rdar://problem/24999533>
;