https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87269
Bug ID: 87269 Summary: [9 Regression] ICE in tsubst_copy, at cp/pt.c:15475 starting from r261802 Product: gcc Version: 9.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org Target Milestone: --- Created attachment 44675 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=44675&action=edit unreduced test-case Starting from the revision I see: $ g++ ice.ii -c In file included from /home/abuild/rpmbuild/BUILD/webkitgtk-2.22.0/Source/JavaScriptCore/API/JSCallbackObject.h:244, from /home/abuild/rpmbuild/BUILD/webkitgtk-2.22.0/Source/JavaScriptCore/API/glib/JSAPIWrapperGlobalObject.cpp:30: /home/abuild/rpmbuild/BUILD/webkitgtk-2.22.0/Source/JavaScriptCore/API/JSCallbackObjectFunctions.h: In instantiation of ‘static JSC::EncodedJSValue JSC::JSCallbackObject<Parent>::callbackGetter(JSC::ExecState*, JSC::EncodedJSValue, JSC::PropertyName) [with Parent = JSC::JSAPIWrapperGlobalObject; JSC::EncodedJSValue = long int]’: /home/abuild/rpmbuild/BUILD/webkitgtk-2.22.0/Source/JavaScriptCore/API/JSCallbackObjectFunctions.h:162:21: required from ‘static bool JSC::JSCallbackObject<Parent>::getOwnPropertySlot(JSC::JSObject*, JSC::ExecState*, JSC::PropertyName, JSC::PropertySlot&) [with Parent = JSC::JSAPIWrapperGlobalObject]’ /home/abuild/rpmbuild/BUILD/webkitgtk-2.22.0/Source/JavaScriptCore/API/glib/JSAPIWrapperGlobalObject.cpp:57:429: required from here /home/abuild/rpmbuild/BUILD/webkitgtk-2.22.0/Source/JavaScriptCore/API/JSCallbackObjectFunctions.h:700:83: internal compiler error: in tsubst_copy, at cp/pt.c:15513 0x645c85 tsubst_copy /home/marxin/Programming/gcc/gcc/cp/pt.c:15513 0x9f046f tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool, bool) /home/marxin/Programming/gcc/gcc/cp/pt.c:19039 0x9ef398 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool, bool) /home/marxin/Programming/gcc/gcc/cp/pt.c:18309 0x9ef4ac tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool, bool) /home/marxin/Programming/gcc/gcc/cp/pt.c:18325 0x9ef4ac tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool, bool) /home/marxin/Programming/gcc/gcc/cp/pt.c:18325 0x9ef4ac tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool, bool) /home/marxin/Programming/gcc/gcc/cp/pt.c:18325 0x9d6fdb tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/marxin/Programming/gcc/gcc/cp/pt.c:17455 0x9d4099 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/marxin/Programming/gcc/gcc/cp/pt.c:16646 0x9d4b54 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/marxin/Programming/gcc/gcc/cp/pt.c:16636 0x9d3fd9 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool) /home/marxin/Programming/gcc/gcc/cp/pt.c:16939 0xa054ae instantiate_decl(tree_node*, bool, bool) /home/marxin/Programming/gcc/gcc/cp/pt.c:24099 0xa094fb instantiate_pending_templates(int) /home/marxin/Programming/gcc/gcc/cp/pt.c:24215 0x920408 c_parse_final_cleanups() /home/marxin/Programming/gcc/gcc/cp/decl2.c:4709 I'm going to reduce the test-case.