This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/70648] New: [6 Regression] adplug-xmms fails to compile


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

            Bug ID: 70648
           Summary: [6 Regression] adplug-xmms fails to compile
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jakub at gcc dot gnu.org
                CC: jason at gcc dot gnu.org
  Target Milestone: ---

template <class T, class V> struct C
{
  template <class... U>
  constexpr C (...) : c { static_cast<U &&>(0)... } {}
  constexpr const V &operator[](T) { return c[0]; }
  V c[T::F];
};
enum D { E, F };
struct A
{
  struct G
  {
    typedef int *H;
    int g, h;
    C<D, H> i;
    constexpr G () : g (), h (), i{} {}
    constexpr G foo (H) { return G (0, 0, 0, 0, i[E]); }
    constexpr G (int, int, H, H, H) : g (), h (), i{} {}
  };
};
struct B : A
{
  static constexpr auto b = G ().foo (0);
};

fails to compile with -std=c++11, starting with r234013.  No idea whether the
error is valid or not, and perhaps the reduced testcase also doesn't exactly
match the original, I've been reducing on accepted by r234009, rejected by
r234013.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]