I've ported the following four patches from the google/gcc-4_7 branch.
(I'll also push these to trunk shortly.)

Bootstrapped, tested, and committed at r200036.

-cary


gcc:

2012-08-09   Cary Coutant  <ccout...@google.com>

    Backport of pending upstream patch.

        * dwarf2out.c (clone_as_declaration): Copy DW_AT_abstract_origin
        attribute.
        (generate_skeleton_bottom_up): Remove DW_AT_object_pointer attribute
        from original DIE.
        (clone_tree_hash): Rename to ...
        (clone_tree_partial): ... this; change callers.  Copy
        DW_TAG_subprogram DIEs as declarations.


2012-08-22   Cary Coutant  <ccout...@google.com>

        * dwarf2out.c (should_move_die_to_comdat): A type definition
        can contain a subprogram definition, but don't move it to a
        comdat unit.


2012-08-29   Cary Coutant  <ccout...@google.com>

        * dwarf2out.c (clone_tree_partial): Remove.
        (copy_decls_walk): Don't copy children of a declaration
        into a type unit.


2012-08-31   Cary Coutant  <ccout...@google.com>

        * dwarf2out.c (clone_tree_partial): Restore.
        (copy_decls_walk): Call clone_tree_partial to copy children
        of non-declaration DIEs.

gcc/testsuite:

2012-08-09   Cary Coutant  <ccout...@google.com>

    Backport of pending upstream patch.

        * g++.dg/debug/dwarf2/dwarf4-nested.C: New test case.
        * g++.dg/debug/dwarf2/dwarf4-typedef.C: Add
        -fdebug-types-section flag.

Reply via email to