https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78524

--- Comment #7 from amker at gcc dot gnu.org ---
(In reply to Richard Biener from comment #5)
> The MIN_EXPR it builds is correct now though.  Looks like a bug in Adas
> max_size to me when invoked on
> 
>  <min_expr 0x7ffff5ea77d0
>     type <integer_type 0x7ffff5e80dc8 p__char___XDLU_87__90
>         type <integer_type 0x7ffff61e7498 character sizes-gimplified public
> visited string-flag QI
>             size <integer_cst 0x7ffff61e2ca8 constant visited 8>
>             unit size <integer_cst 0x7ffff61e2cc0 constant visited 1>
>             align 8 symtab 0 alias set 4 canonical type 0x7ffff61e7498
> precision 8 min <integer_cst 0x7ffff61e2cf0 -128> max <integer_cst
> 0x7ffff61e2d20 127> context <translation_unit_decl 0x7ffff61ed168 D.15> RM
> min <integer_cst 0x7ffff61e2cd8 0> RM max <integer_cst 0x7ffff61e2c78 255>
> debug type <integer_type 0x7ffff61e73f0 character>
>             pointer_to_this <pointer_type 0x7ffff6202000 access_character>>
>         public unsigned string-flag QI size <integer_cst 0x7ffff61e2ca8 8>
> unit size <integer_cst 0x7ffff61e2cc0 1>
>         align 8 symtab 0 alias set 4 canonical type 0x7ffff5e80dc8 precision
> 8 min <integer_cst 0x7ffff5e967c8 0> max <integer_cst 0x7ffff6238300 255>
> context <function_decl 0x7ffff5ea0e00 p> RM size <integer_cst 0x7ffff5e96828
> 7> RM min <integer_cst 0x7ffff5e967f8 87> RM max <integer_cst 0x7ffff5e96810
> 90>
>         chain <type_decl 0x7ffff6207ab0 p__char___XDLU_87__90>>
>    
>     arg 0 <component_ref 0x7ffff5ea6270 type <integer_type 0x7ffff5e80dc8
> p__char___XDLU_87__90>
>         visited
>         arg 0 <placeholder_expr 0x7ffff5e969f0 type <record_type
> 0x7ffff5ea4bd0 p__rec>
>             visited>
>         arg 1 <field_decl 0x7ffff5ea5688 d type <integer_type 0x7ffff5e80dc8
> p__char___XDLU_87__90>
>             visited nonaddressable decl_4 VOID file p.adb line 7 col 13
>             align 8 offset_align 1 context <record_type 0x7ffff5ea4bd0
> p__rec> initial <integer_cst 0x7ffff61e2cc0 1>>>
>     arg 1 <integer_cst 0x7ffff5e96ab0 type <integer_type 0x7ffff5e80dc8
> p__char___XDLU_87__90> constant 88>>
> 
> we end up with mismatched type lhs/rhs.  The placeholder is transformed to
> 
> (gdb) p debug_tree (lhs)
>  <integer_cst 0x7ffff5e967f8 type <integer_type 0x7ffff61e7498 character>
> constant 87>
> 
> a signed integer constant.

Thanks very much for helping.  I am trying to enable ada on my system.

Thanks.

Reply via email to