44 lines · cpp
1// RUN: %clang_cc1 -fsyntax-only %s2 3template<typename T, T I, int J>4struct adder {5 enum {6 value = I + J,7 value28 };9};10 11int array1[adder<long, 3, 4>::value == 7? 1 : -1];12 13namespace PR6375 {14 template<typename T> 15 void f() {16 enum Enum17 {18 enumerator1 = 0xFFFFFFF,19 enumerator2 = enumerator1 - 120 };21 22 int xb1 = enumerator1;23 int xe1 = enumerator2;24 }25 26 template void f<int>();27}28 29namespace EnumScoping {30 31template <typename T>32struct C {33 struct X {};34 enum {35 value = 4236 };37};38 39void f(int i, C<int>::X c) {40 int value;41}42 43}44