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++/79253] New: [7 Regression] ICE in tsubst_copy starting with r243723


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

            Bug ID: 79253
           Summary: [7 Regression] ICE in tsubst_copy starting with
                    r243723
           Product: gcc
           Version: 7.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jakub at gcc dot gnu.org
  Target Milestone: ---

Since r243723 we ICE on the following testcase:
template <typename> struct A;
template <typename = A<int>> class B {};
template <class T, class U, class V> void foo (U, V) { T (0, 0); }
struct C {};
template <template <bool, bool, bool> class F, class>
void
bar ()
{
  F<0, 0, 0>::baz;
}
struct G { int l; };
template <int, int, int> struct E : C
{
  E (int, int) : e (0)
  {
    auto &m = this->m ();
    auto c = [&] { m.l; };
  }
  G &m ();
  int e;
};
struct D
{
  void
  baz () { bar<F, B<>>; }
  template <bool, bool, bool> struct F
  {
    static B<> baz () { foo<E<0, 0, 0>> (0, 0); }
  };
};

reduced from mathicgb:
src/mathicgb/ModuleMonoSet.cpp:184:1:   required from here
src/mathicgb/ModuleMonoSet.cpp:71:34: internal compiler error: in tsubst_copy,
at cp/pt.c:14400
       const auto& monoid = this->monoid(); // workaround for gcc 4.5.3 issue
                            ~~~~~~^~~~~~

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