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

            Bug ID: 65002
           Summary: [4.9 Regression] ICE: Segmentation fault
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: doko at gcc dot gnu.org

seen with trunk 20150210 on x86_64-linux-gnu

$ g++ -c -O2 IFCCurve.ii 
IFCCurve.ii: In member function 'virtual int B::m_fn1(float) const':
IFCCurve.ii:22:1: internal compiler error: Segmentation fault
 }
 ^
Please submit a full bug report,
with preprocessed source if appropriate.

$ cat IFCCurve.ii
namespace fastmath {
template <typename T> float floor(const T &) __attribute__((const));
template <typename T> float floor(const T &p1) { return p1; }
}
using fastmath::floor;
class A {
public:
  A(int, int);
  virtual int m_fn1(float) const;
};
class B : A {
public:
  B(int, int p2) : A(entity, p2) {}
  int m_fn1(float p1) const { long b(floor(p1)); }
  int entity;
};

int a;
void Convert() {
  if (int *c = 0)
    B(*c, a);
}

Reply via email to