[Bug middle-end/81897] [6/7 Regression] spurious -Wmaybe-uninitialized warning
asolokha at gmx dot com
gcc-bugzilla@gcc.gnu.org
Mon Jan 8 08:29:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81897
Arseny Solokha <asolokha at gmx dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |asolokha at gmx dot com
--- Comment #14 from Arseny Solokha <asolokha at gmx dot com> ---
I believe the fix leads to the following ICE on trunk:
% gcc-8.0.0-alpha20180107 -O1 -fno-tree-ccp -Wmaybe-uninitialized -w -c
odqkzc8z.c
during GIMPLE pass: uninit
odqkzc8z.c: In function 'pc':
odqkzc8z.c:4:1: internal compiler error: Segmentation fault
pc (int *tt)
^~
0xd4e2cf crash_signal
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180107/work/gcc-8-20180107/gcc/toplev.c:325
0x722c54 gimple_code
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180107/work/gcc-8-20180107/gcc/gimple.h:1677
0x722c54 is_gimple_call
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180107/work/gcc-8-20180107/gcc/gimple.h:2788
0x722c54 convert_control_dep_chain_into_preds
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180107/work/gcc-8-20180107/gcc/tree-ssa-uninit.c:676
0xefa535 convert_control_dep_chain_into_preds
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180107/work/gcc-8-20180107/gcc/tree-ssa-uninit.c:648
0xefa535 find_def_preds
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180107/work/gcc-8-20180107/gcc/tree-ssa-uninit.c:909
0xefa535 is_use_properly_guarded
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180107/work/gcc-8-20180107/gcc/tree-ssa-uninit.c:2472
0xefae46 find_uninit_use
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180107/work/gcc-8-20180107/gcc/tree-ssa-uninit.c:2531
0xefae46 warn_uninitialized_phi
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180107/work/gcc-8-20180107/gcc/tree-ssa-uninit.c:2600
0xefae46 execute
/var/tmp/portage/sys-devel/gcc-8.0.0_alpha20180107/work/gcc-8-20180107/gcc/tree-ssa-uninit.c:2709
int oo;
void
pc (int *tt)
{
int cf = 0;
if (*tt != 0)
{
if (0)
{
int *qg;
int uj = 0;
t6:
tt = &cf;
if (oo != 0)
{
++uj;
*qg = !!oo && !!uj;
}
}
cf = 0;
goto t6;
}
if (oo != 0)
{
*tt = 1;
goto t6;
}
}
(as of r256324).
More information about the Gcc-bugs
mailing list