https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108888
Bug ID: 108888 Summary: error: definition in block 26 follows the use Product: gcc Version: 13.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: dcb314 at hotmail dot com Target Milestone: --- For this C++ code: int scaleValueSaturate_scalefactor, scaleValueSaturate___trans_tmp_2, scaleValuesSaturate_i; int scaleValueSaturate(int value) { int result = __builtin_clz(value); if (value) if (-result <= scaleValueSaturate_scalefactor) return 0; return scaleValueSaturate___trans_tmp_2; } short scaleValuesSaturate_dst; short *scaleValuesSaturate_src; void scaleValuesSaturate() { for (; scaleValuesSaturate_i; scaleValuesSaturate_i++) scaleValuesSaturate_dst = scaleValueSaturate(scaleValuesSaturate_src[scaleValuesSaturate_i]); } compiled with recent gcc trunk, does this: [dcb36@fedora36 cvise]$ ~/gcc/results/bin/g++ -c -O1 bug887B.cc [dcb36@fedora36 cvise]$ ~/gcc/results/bin/g++ -c -O2 bug887B.cc bug887B.cc: In function ‘void scaleValuesSaturate()’: bug887B.cc:12:6: error: definition in block 4 follows the use 12 | void scaleValuesSaturate() { | ^~~~~~~~~~~~~~~~~~~ for SSA_NAME: _25 in statement: result_14 = .MASK_CALL (__builtin_clz, value.0_11, _25); during GIMPLE pass: ifcvt bug887B.cc:12:6: internal compiler error: verify_ssa failed 0x1316f05 verify_ssa(bool, bool) ../../trunk.d1/gcc/tree-ssa.cc:1211 The bug first seems to appear sometime between git hash g:a804419c89db9e1c from yesterday and g:aee5ee35602e0098, from today.