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

--- Comment #5 from Simon Marchi <simon.marchi at polymtl dot ca> ---
(In reply to Richard Biener from comment #3)
> Hmm, can you point out the issue in the reduced testcase?  I can't see it. 
> The only cloning done I see is partial inlining so does
> -fno-partial-inlining fix the issue for you?

Doh, I indeed uploaded the wrong thing.  My creduce test was trying to
reproduce the "wrong parameter order" problem, which I later found was probably
not considered a bug, instead of the "duplicate parameter problem".  I re-ran
it with the right test, I attached the result.

The relevant portion of the DWARF is:

0x000003bb:   DW_TAG_subprogram
                DW_AT_abstract_origin   (0x00000383 "do_examine")
                DW_AT_low_pc    (0x0000000000000000)
                DW_AT_high_pc   (0x0000000000000039)
                DW_AT_frame_base        (DW_OP_call_frame_cfa)
                DW_AT_GNU_all_call_sites        (true)
                DW_AT_sibling   (0x00000464)

0x000003d6:     DW_TAG_variable
                  DW_AT_abstract_origin (0x000003a4 "ai")

0x000003db:     DW_TAG_variable
                  DW_AT_abstract_origin (0x000003af "aq")
                  DW_AT_location        (DW_OP_fbreg -17)

0x000003e3:     DW_TAG_formal_parameter
                  DW_AT_abstract_origin (0x0000039f)
                  DW_AT_location        (<decoding error> 9f 03 00 00 9f)

0x000003ef:     DW_TAG_formal_parameter
                  DW_AT_abstract_origin (0x0000039a)
                  DW_AT_location        (<decoding error> 9a 03 00 00 9f)

0x000003fb:     DW_TAG_formal_parameter
                  DW_AT_abstract_origin (0x00000390 "y")

0x00000400:     DW_TAG_formal_parameter
                  DW_AT_abstract_origin (0x00000390 "y")

The last two DW_TAG_formal_parameter refer to the same parameter.

Reply via email to