[Bug c++/58167] New: compile crush
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58167 Bug ID: 58167 Summary: compile crush Product: gcc Version: 4.7.3 Status: UNCONFIRMED Severity: major Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: leanid.chaika at gmail dot com I have problem in compiling my simple game. I use c++11 gcc4.7.3 ubuntu 13.04 64bit g++ -o obj/prototype/ground.o -c -fno-strict-aliasing -std=c++0x -Wall -Wfatal-errors -D_WEBSOCKETPP_CPP11_STL_ -D_WEBSOCKETPP_CPP11_FRIEND_ -I /home/leo/lge/src -DTW_STATIC -DFT2_BUILD_LIBRARY -DDEBUG -g src/prototype/ground.cpp ' Internal compiler error: Error reporting routines re-entered. Please submit a full bug report, with preprocessed source if appropriate. See for instructions. Preprocessed source stored into /tmp/cciMso7v.out file, please attach this to your bugreport.
[Bug c++/58167] compile crush
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58167 --- Comment #1 from leanid --- file can't compile: http://ubuntuone.com/1Pwt7bzCgPDFgaR90gchRy
[Bug c++/88165] New: error: default member initializer for 'A::B::m' required before the end of its enclosing class
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88165 Bug ID: 88165 Summary: error: default member initializer for 'A::B::m' required before the end of its enclosing class Product: gcc Version: 8.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: leanid.chaika at gmail dot com Target Milestone: --- The following compiles with MSVC2017 and not with gcc8.2. This bug was reported first on stackoverflow (https://stackoverflow.com/questions/53408962/try-to-understand-compiler-error-message-default-member-initializer-required-be) minimum code example: -prog.cc- #include class A { public: class B { public: explicit B() = default; ~B() = default; private: double m = std::numeric_limits::max(); }; void f(double d, const B &b = B{}) {} }; int main() { A a{}; a.f(0.); } compile command: g++ prog.cc -std=c++17 error message: prog.cc:15:36: error: default member initializer for 'A::B::m' required before the end of its enclosing class void f(double d, const B &b = B{}) {} ^ prog.cc:12:22: note: defined here double m = std::numeric_limits::max(); ^
[Bug c++/88165] error: default member initializer for 'A::B::m' required before the end of its enclosing class
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88165 --- Comment #1 from leanid --- minim code: --- struct A { struct B { double m = 0.; }; void f(double d, const B &b = B{}) {} }; int main() { } ---