https://sourceware.org/bugzilla/show_bug.cgi?id=28691

--- Comment #2 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot 
gnu.org> ---
The master branch has been updated by Alan Modra <amo...@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=161cdabc3927b144ffcff9bf7b1daf5fe32a193c

commit 161cdabc3927b144ffcff9bf7b1daf5fe32a193c
Author: Alan Modra <amo...@gmail.com>
Date:   Wed Dec 15 15:06:26 2021 +1030

    PR28691, validate dwarf attribute form

    PR28691 is a fuzzing PR that triggers a non-problem of "output changes
    per run" with PIEs and/or different compilers.  I've closed similar
    PRs before as wontfix, but I guess there will be no end of this type
    of PR.  The trigger is an attribute that usually takes one of the
    offset/constant reference DW_FORMs being given an indexed string
    DW_FORM.  The bfd reader doesn't support indexed strings and returns
    an error string instead.  The address of the string varies with PIE
    runs and/or compiler, and we allow that address to appear in output.
    Fix this by validating integer attribute forms, as we do for string
    form attributes.

            PR 28691
            * dwarf2.c (is_str_attr): Rename to..
            (is_str_form): ..this.  Change param type.  Update calls.
            (is_int_form): New function.
            (read_attribute_value): Handle DW_FORM_addrx2.
            (find_abstract_instance): Validate form when using attr.u.val.
            (scan_unit_for_symbols, parse_comp_unit): Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to