https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67687

            Bug ID: 67687
           Summary: [c++0x][constexpr] initialize constexpr member with
                    constexpr constructor
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: critical
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: crosetto at lifev dot org
  Target Milestone: ---

the following code doesn't compile with gcc 5.1
error:
internal compiler error: unexpected expression '(const
accessor_base){dimension<Pair:: first>{0}}' of kind implicit_conv_expr
     static constexpr accessor_base s_args_constexpr{dimension<Pair::first>{0}
};

//CODE:
template <unsigned int Coordinate>
struct dimension{
    template<typename ... T>
    constexpr dimension(T...t){}
};

struct accessor_base{
    template<typename ... T>
    constexpr accessor_base(T...t){}
};

template <typename ArgType, typename Pair>
struct accessor_mixed{

private:
    static constexpr accessor_base s_args_constexpr{dimension<Pair::first>{0}
};
};

Reply via email to