> This breaks bootstrap on riscv64:
> 
> In function ‘alloca_type_and_limit alloca_call_type(range_query&, gimple*, 
> bool ’,
>     inlined from ‘virtual unsigned int pass_walloca::execute(function*)’ at 
> ../../gcc/gimple-ssa-warn-alloca.c:295:25:
> ../../gcc/gimple-ssa-warn-alloca.c:206:13: error: ‘*(long int*)((char*)&ret + 
> offsetof(alloca_type_and_limit, 
> alloca_type_and_limit::limit.generic_wide_int<wide_int_storage>::<unnamed>.wide_int_storage::val[0]))’
>  may be used uninitialized  -Werror=maybe-uninitialized]
>   206 |         ret = alloca_type_and_limit (ALLOCA_OK);
>       |         ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ../../gcc/gimple-ssa-warn-alloca.c: In member function ‘virtual unsigned int 
> pass_walloca::execute(function*)’:
> ../../gcc/gimple-ssa-warn-alloca.c:200:32: note: ‘ret’ declared here
>   200 |   struct alloca_type_and_limit ret = alloca_type_and_limit 
> (ALLOCA_OK);
>       |                                ^~~

This looks like a false positive implied by different inlining
decisions.  Would it be posible to have preprocessed source + the
tripplet to configure a cross-compiler?

Thanks,
Honza

Reply via email to