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 middle-end/79805] New: [7 Regression] ICE (verify_flow_info failed) with -fnon-call-exceptions -O


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

            Bug ID: 79805
           Summary: [7 Regression] ICE (verify_flow_info failed) with
                    -fnon-call-exceptions -O
           Product: gcc
           Version: 7.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
                CC: jakub at redhat dot com
  Target Milestone: ---

Probably similar to PR79396:

$ cat ice.C
enum a
{
  b
};
template <a = b> class c
{
  bool m_fn1 ();
  int d;
};
template <>
bool
c<>::m_fn1 ()
{
  int e (__atomic_compare_exchange_n (&d, &e, 1, true, 4, 0));
}

$ g++ ice.C -fnon-call-exceptions -O -std=c++11
ice.C: In member function ‘bool c<<anonymous> >::m_fn1() [with a <anonymous> =
(a)0]’:
ice.C:15:1: error: BB 2 can not throw but has an EH edge
 }
 ^
ice.C:15:1: internal compiler error: verify_flow_info failed
0x9c0b79 verify_flow_info()
        ../../gcc/cfghooks.c:260
0xd198d1 execute_function_todo
        ../../gcc/passes.c:1978
0xd1a2e5 execute_todo
        ../../gcc/passes.c:2016

Thanks

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