https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93845
Bug ID: 93845 Summary: [10 regression] ICE in verify_sra_access_forest, at tree-sra.c:2358 Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: dimhen at gmail dot com Target Milestone: --- probably differs from PR93776 and PR93516 r10-6309 PASS r10-6342 FAIL r10-6723 FAIL [r10-6723] g++ -fpreprocessed -fchecking=1 -O -c x.ii g++ -fpreprocessed -fchecking=1 -O -c x.ii; ll x.ii during GIMPLE pass: esra x.ii: In function ‘void m()’: x.ii:21:1: internal compiler error: in verify_sra_access_forest, at tree-sra.c:2358 21 | } | ^ 0x817afd verify_sra_access_forest(access*) /home/dimhen/src/gcc_current/gcc/tree-sra.c:2358 0x1334bca verify_all_sra_access_forests() /home/dimhen/src/gcc_current/gcc/tree-sra.c:2403 0x1339910 analyze_all_variable_accesses /home/dimhen/src/gcc_current/gcc/tree-sra.c:3414 0x1339e31 perform_intra_sra /home/dimhen/src/gcc_current/gcc/tree-sra.c:4468 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. $ cat x.ii struct a; struct b { a *operator->(); }; class c { void *g; int d; public: template <typename e> e f() { return *static_cast<e *>(this); } }; struct h : c {}; struct a { void i(c); }; void m() { b j; c k; h l = k.f<h>(); j->i(l); }