// RUN: %clang_cc1 %s -fsyntax-only -verify -Wduplicate-enum
// RUN: %clang_cc1 -triple x86_64-apple-darwin %s -x c++ -DCPP -fsyntax-only -verify -Wduplicate-enum
enum A {
  A1 = 0,  // expected-note {{element 'A1' also has value 0}}
  A2 = -1,
  A3,  // expected-warning {{element 'A3' has been implicitly assigned 0 which another element has been assigned}}
  A4};

enum B {
  B1 = -1,  // expected-note {{element 'B1' also has value -1}}
  B2,       // expected-warning {{element 'B2' has been implicitly assigned 0 which another element has been assigned}}
  B3,
  B4 = -2,
  B5,  // expected-warning {{element 'B5' has been implicitly assigned -1 which another element has been assigned}}
  B6   // expected-note {{element 'B6' also has value 0}}
};

enum C { C1, C2 = -1, C3 }; // expected-warning{{element 'C1' has been implicitly assigned 0 which another element has been assigned}} \
  // expected-note {{element 'C3' also has value 0}}

enum D {
  D1,
  D2,
  D3,  // expected-warning{{element 'D3' has been implicitly assigned 2 which another element has been assigned}}
  D4 = D2,  // no warning
  D5 = 2  // expected-note {{element 'D5' also has value 2}}
};

enum E {
  E1,
  E2 = E1,
  E3 = E2
};

enum F {
  F1,
  F2,
  FCount,
  FMax = FCount - 1
};

enum G {
  G1,
  G2,
  GMax = G2,
  GCount = GMax + 1
};

enum {
  H1 = 0,
  H2 = -1,
  H3,
  H4};

enum {
  I1 = -1,
  I2,
  I3,
  I4 = -2,
  I5,
  I6
};

enum { J1, J2 = -1, J3 };

enum { 
  K1, 
  K2, 
  K3,
  K4 = K2,
  K5 = 2
};

enum {
  L1,
  L2 = L1,
  L3 = L2
};

enum {
  M1,
  M2,
  MCount,
  MMax = MCount - 1
};

enum {
  N1,
  N2,
  NMax = N2,
  NCount = NMax + 1
};

// PR15693
enum enum1 {
  VALUE // expected-note{{previous definition is here}}
};

enum enum2 {
  VALUE // expected-error{{redefinition of enumerator 'VALUE'}}
};

// rdar://44774672
#ifdef CPP
enum BigEnumerators : long {
  e1,
  e2 = __LONG_MAX__,
};
#endif
