https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63244
Markus Trippelsdorf <trippels at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Known to work| |4.7.3, 5.0 Last reconfirmed| |2014-09-12 Component|c++ |middle-end CC| |trippels at gcc dot gnu.org Ever confirmed|0 |1 Summary|x86_64-pc-linux-gnu-g++: |[4.9 regression] internal |internal compiler error: |compiler error: |Segmentation fault (program |Segmentation fault (program |cc1plus) |cc1plus) Target Milestone|--- |4.9.3 Known to fail| |4.9.2 --- Comment #4 from Markus Trippelsdorf <trippels at gcc dot gnu.org> --- markus@x4 tmp % cat context.ii namespace std { template <typename> void declval(); class A; } namespace detail { template <typename...> class iterator_adaptor; template <typename, typename, typename> class basic_range; template <typename T> using preferred_iterator_type = decltype(std::declval<T>); } template <typename... Os> class adaptor_range : detail::basic_range< adaptor_range<Os...>, detail::iterator_adaptor<detail::preferred_iterator_type<Os>...>, detail::iterator_adaptor<detail::preferred_iterator_type<Os>...>> {}; template <typename> using property_list = std::A; class B { B(const property_list<int>& p1, const adaptor_range<int, int>& p2); }; B::B(const ::property_list<int>& p1, const adaptor_range<int, int>& p2) {} markus@x4 tmp % gdb --args g++ -std=c++11 -c context.ii Reading symbols from g++...done. (gdb) run Starting program: /usr/bin/g++ -std=c++11 -c context.ii process 30304 is executing new program: /usr/x86_64-pc-linux-gnu/gcc-bin/4.9.2/g++ [New process 30308] process 30308 is executing new program: /usr/libexec/gcc/x86_64-pc-linux-gnu/4.9.2/cc1plus Program received signal SIGSEGV, Segmentation fault. [Switching to process 30308] 0x0000000000c2ffd6 in analyze_functions() () (gdb) bt #0 0x0000000000c2ffd6 in analyze_functions() () #1 0x0000000000c2ed95 in finalize_compilation_unit() () #2 0x0000000000d2a2d4 in cp_write_global_declarations() () #3 0x0000000000c29020 in compile_file() [clone .lto_priv.2474] () #4 0x0000000000b6ccd7 in toplev_main(int, char**) () #5 0x00007ffff7741fd0 in __libc_start_main () from /lib/libc.so.6 #6 0x0000000000b66a93 in _start () (gdb)