https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102474
Bug ID: 102474 Summary: [12 regression] Crash in ipa-modref compiling Go code Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: blocker Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: ian at airs dot com Target Milestone: --- Compiling this Go program with -O1 -fno-strict-aliasing crashes the compiler in ipa-modref. package p type S struct { f1 string f2 interface{} f3 string f4 struct { f41 uint32 f42 struct { f421 int32 f422 uint32 } } f5 struct { f51 *byte f52 *byte f53 *byte } f6 struct { f61 int32 } f7 struct { f71 uint64 f72 int64 f73 *byte } f8 *byte } The crash I see is: during IPA pass: modref go1: internal compiler error: in forced_merge, at ipa-modref-tree.h:351 0xcbaff1 modref_access_node::forced_merge(modref_access_node const&, bool) ../../trunk/gcc/ipa-modref-tree.h:351 0xcbe389 modref_ref_node<int>::insert_access(modref_access_node, unsigned long, bool) ../../trunk/gcc/ipa-modref-tree.h:575 0xcbe8e3 modref_tree<int>::insert(int, int, modref_access_node, bool) ../../trunk/gcc/ipa-modref-tree.h:844 0xcb65de propagate_unknown_call ../../trunk/gcc/ipa-modref.c:3418 0xcb6a69 modref_propagate_in_scc ../../trunk/gcc/ipa-modref.c:3598 0xcb740e execute ../../trunk/gcc/ipa-modref.c:3968 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions.