This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH] Fix up rv1.C with -gdwarf-4 -fno-debug-types-section
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Jason Merrill <jason at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org, Mark Wielaard <mjw at redhat dot com>
- Date: Mon, 30 May 2011 20:09:07 +0200
- Subject: [PATCH] Fix up rv1.C with -gdwarf-4 -fno-debug-types-section
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
Hi!
Whether DW_TAG_rvalue_reference_type or DW_TAG_reference_type
should be emitted for rvalue references shouldn't depend on
whether .debug_types section is emitted or not, it should
depend just on whether emitting DWARF4+ or not.
Ok for trunk?
2011-05-30 Jakub Jelinek <jakub@redhat.com>
* dwarf2out.c (modified_type_die, gen_reference_type_die): Use
DW_TAG_rvalue_reference_type even for
-gdwarf-4 -fno-debug-types-section.
--- gcc/dwarf2out.c.jj 2011-05-22 20:55:04.000000000 +0200
+++ gcc/dwarf2out.c 2011-05-30 20:03:59.081671249 +0200
@@ -13031,7 +13031,7 @@ modified_type_die (tree type, int is_con
}
else if (code == REFERENCE_TYPE)
{
- if (TYPE_REF_IS_RVALUE (type) && use_debug_types)
+ if (TYPE_REF_IS_RVALUE (type) && dwarf_version >= 4)
mod_type_die = new_die (DW_TAG_rvalue_reference_type, comp_unit_die (),
type);
else
@@ -20686,7 +20686,7 @@ gen_reference_type_die (tree type, dw_di
{
dw_die_ref ref_die, scope_die = scope_die_for (type, context_die);
- if (TYPE_REF_IS_RVALUE (type) && use_debug_types)
+ if (TYPE_REF_IS_RVALUE (type) && dwarf_version >= 4)
ref_die = new_die (DW_TAG_rvalue_reference_type, scope_die, type);
else
ref_die = new_die (DW_TAG_reference_type, scope_die, type);
Jakub