// RUN: %clang_cc1 -fsyntax-only -pedantic -std=c++11 -verify -triple x86_64-apple-darwin %s

enum E {};

struct Z {};
typedef int Integer;

struct X {
  enum E : 1;
  enum E : Z; // expected-error{{invalid underlying type}}
  enum E2 : int;
  enum E3 : Integer;
};

struct Y {
  enum E : int(2);
  enum E : Z(); // expected-error{{integral constant expression must have integral or unscoped enumeration type, not 'Z'}}
};

namespace pr18587 {
struct A {
  enum class B {
    C
  };
};
const int C = 4;
struct D {
  A::B : C;
};
}

enum WithUnderlying : unsigned { wu_value };
struct WithUnderlyingBitfield {
  WithUnderlying wu : 3;
} wu = { wu_value };
int want_unsigned(unsigned);
int want_unsigned(int) = delete;
int check_enum_bitfield_promotes_correctly = want_unsigned(wu.wu);
