1// PR c++/55931
2// { dg-do compile { target c++11 } }
3
4#include <type_traits>
5
6template<typename Type>
7class Test
8{
9    public:
10        constexpr Test(const Type val) : _value(val) {}
11        constexpr Type get() const {return _value;}
12        static void test()
13        {
14            static constexpr Test<int> x(42);
15            std::integral_constant<int, x.get()> i; // This is not working
16        }
17    protected:
18        Type _value;
19};
20
21int main()
22{
23    static constexpr Test<int> x(42);
24    std::integral_constant<int, x.get()> i; // This is working
25    Test<double>::test();
26}
27