aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDodji Seketeli <dodji@redhat.com>2009-09-25 23:23:18 +0000
committerDodji Seketeli <dodji@gcc.gnu.org>2009-09-26 01:23:18 +0200
commit7653f2738f8f2c8a1a0bf3f60d09fb0b99205458 (patch)
tree084ee79e8cbb51630db1074e49f86cafb7826925 /gcc
parent072c87d17058df5073c7cb7e9e46809b7c5c0515 (diff)
downloadgcc-7653f2738f8f2c8a1a0bf3f60d09fb0b99205458.zip
gcc-7653f2738f8f2c8a1a0bf3f60d09fb0b99205458.tar.gz
gcc-7653f2738f8f2c8a1a0bf3f60d09fb0b99205458.tar.bz2
DWARF for Template parm pack is a gnu extension.
include/ChangeLog: * dwarf2.h (enum dwarf_tag): Rename DW_TAG_template_parameter_pack and DW_TAG_formal_parameter_pack into DW_TAG_GNU_template_parameter_pack and DW_TAG_formal_parameter_pack until DWARF 5 is out. gcc/ChangeLog: * dwarf2out.c (dwarf_tag_name, gen_generic_params_dies, generic_parameter_die, template_parameter_pack_die, gen_formal_parameter_die, gen_subprogram_die): Adjust after renaming DW_TAG_formal_parameter_pack and DW_TAG_template_parameter_pack into DW_TAG_GNU_formal_parameter_pack and DW_TAG_GNU_template_parameter_pack. gcc/testsuite/ChangeLog: * g++.dg/debug/dwarf2/template-func-params-4.C: Adjust after renaming DW_TAG_template_parameter_pack and DW_TAG_formal_parameter_pack into DW_TAG_GNU_template_parameter_pack and DW_TAG_GNU_formal_parameter_pack. * g++.dg/debug/dwarf2/template-params-4.C: Likewise. * g++.dg/debug/dwarf2/template-func-params-7.C: Likewise. From-SVN: r152188
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog12
-rw-r--r--gcc/dwarf2out.c22
-rw-r--r--gcc/testsuite/ChangeLog9
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-4.C6
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-7.C6
-rw-r--r--gcc/testsuite/g++.dg/debug/dwarf2/template-params-4.C6
6 files changed, 35 insertions, 26 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7e7367f..733d2f5 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,10 +1,10 @@
-2009-09-25 Richard Henderson <rth@redhat.com>
+2009-09-25 Dodji Seketeli <dodji@redhat.com>
- PR middle-end/41469
- * tree-eh.c (lower_resx): Resolve RESX with no source region to
- __builtin_trap.
- (gate_lower_resx): New.
- (gate_lower_eh_dispatch): Rename from gate_lower_ehcontrol.
+ * dwarf2out.c (dwarf_tag_name, gen_generic_params_dies,
+ generic_parameter_die, template_parameter_pack_die,
+ gen_formal_parameter_die, gen_subprogram_die): Adjust after renaming
+ DW_TAG_formal_parameter_pack and DW_TAG_template_parameter_pack into
+ DW_TAG_GNU_formal_parameter_pack and DW_TAG_GNU_template_parameter_pack.
2009-09-25 Anatoly Sokolov <aesok@post.ru>
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 2338e29..bbb21b0 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -6340,10 +6340,10 @@ dwarf_tag_name (unsigned int tag)
return "DW_TAG_condition";
case DW_TAG_shared_type:
return "DW_TAG_shared_type";
- case DW_TAG_template_parameter_pack:
- return "DW_TAG_template_parameter_pack";
- case DW_TAG_formal_parameter_pack:
- return "DW_TAG_formal_parameter_pack";
+ case DW_TAG_GNU_template_parameter_pack:
+ return "DW_TAG_GNU_template_parameter_pack";
+ case DW_TAG_GNU_formal_parameter_pack:
+ return "DW_TAG_GNU_formal_parameter_pack";
case DW_TAG_MIPS_loop:
return "DW_TAG_MIPS_loop";
case DW_TAG_format_label:
@@ -10560,7 +10560,7 @@ gen_generic_params_dies (tree t)
if (parm && TREE_VALUE (parm) && arg)
{
/* If PARM represents a template parameter pack,
- emit a DW_TAG_template_parameter_pack DIE, followed
+ emit a DW_TAG_GNU_template_parameter_pack DIE, followed
by DW_TAG_template_*_parameter DIEs for the argument
pack elements of ARG. Note that ARG would then be
an argument pack. */
@@ -10675,7 +10675,7 @@ generic_parameter_die (tree parm, tree arg,
return tmpl_die;
}
-/* Generate and return a DW_TAG_template_parameter_pack DIE representing.
+/* Generate and return a DW_TAG_GNU_template_parameter_pack DIE representing.
PARM_PACK must be a template parameter pack. The returned DIE
will be child DIE of PARENT_DIE. */
@@ -10691,7 +10691,7 @@ template_parameter_pack_die (tree parm_pack,
&& parm_pack
&& DECL_NAME (parm_pack));
- die = new_die (DW_TAG_template_parameter_pack, parent_die, parm_pack);
+ die = new_die (DW_TAG_GNU_template_parameter_pack, parent_die, parm_pack);
add_AT_string (die, DW_AT_name, IDENTIFIER_POINTER (DECL_NAME (parm_pack)));
for (j = 0; j < TREE_VEC_LENGTH (parm_pack_args); j++)
@@ -15425,7 +15425,7 @@ gen_formal_parameter_die (tree node, tree origin, bool emit_name_p,
return parm_die;
}
-/* Generate and return a DW_TAG_formal_parameter_pack. Also generate
+/* Generate and return a DW_TAG_GNU_formal_parameter_pack. Also generate
children DW_TAG_formal_parameter DIEs representing the arguments of the
parameter pack.
@@ -15450,7 +15450,7 @@ gen_formal_parameter_pack_die (tree parm_pack,
&& DECL_NAME (parm_pack)
&& subr_die);
- parm_pack_die = new_die (DW_TAG_formal_parameter_pack, subr_die, parm_pack);
+ parm_pack_die = new_die (DW_TAG_GNU_formal_parameter_pack, subr_die, parm_pack);
add_AT_string (parm_pack_die, DW_AT_name,
IDENTIFIER_POINTER (DECL_NAME (parm_pack)));
@@ -15988,10 +15988,10 @@ gen_subprogram_die (tree decl, dw_die_ref context_die)
DECL itself. This is useful because we want to emit specific DIEs for
function parameter packs and those are declared as part of the
generic function declaration. In that particular case,
- the parameter pack yields a DW_TAG_formal_parameter_pack DIE.
+ the parameter pack yields a DW_TAG_GNU_formal_parameter_pack DIE.
That DIE has children DIEs representing the set of arguments
of the pack. Note that the set of pack arguments can be empty.
- In that case, the DW_TAG_formal_parameter_pack DIE will not have any
+ In that case, the DW_TAG_GNU_formal_parameter_pack DIE will not have any
children DIE.
Otherwise, we just consider the parameters of DECL. */
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 03410b9..3157ff9 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,12 @@
+2009-09-25 Dodji Seketeli <dodji@redhat.com>
+
+ * g++.dg/debug/dwarf2/template-func-params-4.C: Adjust after renaming
+ DW_TAG_template_parameter_pack and DW_TAG_formal_parameter_pack
+ into DW_TAG_GNU_template_parameter_pack and
+ DW_TAG_GNU_formal_parameter_pack.
+ * g++.dg/debug/dwarf2/template-params-4.C: Likewise.
+ * g++.dg/debug/dwarf2/template-func-params-7.C: Likewise.
+
2009-09-25 Nathan Froyd <froydnj@codesourcery.com>
* gcc.dg/vect/vect.exp: Append extra parameters as separate
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-4.C b/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-4.C
index f75d0e6..45b0cf8 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-4.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-4.C
@@ -6,10 +6,10 @@
// count<char, long> and count<long>. In practice, only
// count<int, char, long> is emitted, thanks to constant folding.
// So in theory, each of the 3 instances of count yields a
-// DW_TAG_tempalate_parameter_pack DIE, but in practise, there is only one
-// DW_TAG_template_parameter_pack as there is only count<int, char, long>
+// DW_TAG_GNU_template_parameter_pack DIE, but in practise, there is only one
+// DW_TAG_GNU_template_parameter_pack as there is only count<int, char, long>
// is emitted.
-// { dg-final { scan-assembler-times "DIE \\(0x.*?\\) DW_TAG_template_parameter_pack" 1} }
+// { dg-final { scan-assembler-times "DIE \\(0x.*?\\) DW_TAG_GNU_template_parameter_pack" 1} }
// { dg-final { scan-assembler-times "DIE \\(0x.*?\\) DW_TAG_template_type_param" 3} }
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-7.C b/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-7.C
index 8a883f8..a19217c 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-7.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/template-func-params-7.C
@@ -17,9 +17,9 @@
// printf<int, char, int> and printf<char, int> have a pack expansion as
// function parameters. There should then be 3
-// DW_TAG_template_parameter_pack and 3 DW_TAG_formal_parameter_pack DIEs
-// { dg-final {scan-assembler-times "DIE \\(0x.*?\\) DW_TAG_template_parameter_pack" 3 } }
-// { dg-final {scan-assembler-times "DIE \\(0x.*?\\) DW_TAG_formal_parameter_pack" 3 } }
+// DW_TAG_GNU_template_parameter_pack and 3 DW_TAG_GNU_formal_parameter_pack DIEs
+// { dg-final {scan-assembler-times "DIE \\(0x.*?\\) DW_TAG_GNU_template_parameter_pack" 3 } }
+// { dg-final {scan-assembler-times "DIE \\(0x.*?\\) DW_TAG_GNU_formal_parameter_pack" 3 } }
// These 3 function template instantiations has a total of 3 template
// parameters named T.
// { dg_final {scan-assembler-times "\.ascii \"T.0\"\[\t \]+.*?DW_AT_name" 3 } }
diff --git a/gcc/testsuite/g++.dg/debug/dwarf2/template-params-4.C b/gcc/testsuite/g++.dg/debug/dwarf2/template-params-4.C
index e83ef61..09e85cb 100644
--- a/gcc/testsuite/g++.dg/debug/dwarf2/template-params-4.C
+++ b/gcc/testsuite/g++.dg/debug/dwarf2/template-params-4.C
@@ -6,10 +6,10 @@
// count<char, long> and count<long>. In practice, only
// count<int, char, long> is emitted, thanks to constant folding.
// So in theory, each of the 3 instances of count yields a
-// DW_TAG_tempalate_parameter_pack DIE, but in practise, there is only one
-// DW_TAG_template_parameter_pack as there is only count<int, char, long>
+// DW_TAG_GNU_template_parameter_pack DIE, but in practise, there is only one
+// DW_TAG_GNU_template_parameter_pack as there is only count<int, char, long>
// is emitted.
-// { dg-final { scan-assembler-times "DIE \\(0x.*?\\) DW_TAG_template_parameter_pack" 1} }
+// { dg-final { scan-assembler-times "DIE \\(0x.*?\\) DW_TAG_GNU_template_parameter_pack" 1} }
// { dg-final { scan-assembler-times "DIE \\(0x.*?\\) DW_TAG_template_type_param" 3} }
template <typename... Args> struct count;