1// PR c++/55127
2
3struct some_class
4{
5  static const bool     is_valid_type = true;
6};
7
8template< typename Type
9        , bool Valid = Type::is_valid_type
10>
11struct wrapper;
12
13template< typename Type >
14struct wrapper< Type, true >
15{
16  typedef Type type;
17};
18
19template< typename T >
20void fun()
21{
22  wrapper<some_class>::type x;
23}
24
25int main()
26{
27  fun<int>();
28}
29