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

            Bug ID: 83974
           Summary: [8 Regression] ICE in cxx_eval_constant_expression
           Product: gcc
           Version: 8.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: ---

struct A {
  typedef void (A::*B) ();
  operator B ();
};
template <typename>
struct C {
  void foo () { d == 0; }
  A d;
};

ICEs on the trunk, likely starting with r256804.
Either constexpr.c needs to be taught to handle various
processing_template_decl only tree codes, or we should have caught it earlier,
like somewhere in is_nondependent_constant_expression or functions it calls.

Reply via email to