summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2008-10-03 18:55:39 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2008-10-03 18:55:39 +0000
commit7551cac6a609944a99fcb8f9298183d4a4b94b93 (patch)
treea971c8701ec850c54aef462c83b1be2eb78af4f5
parent35f85a5a902238b9767145455d4751eaec8f9ea2 (diff)
downloadgcc-7551cac6a609944a99fcb8f9298183d4a4b94b93.tar.gz
PR debug/37726
* gimplify.c (declare_vars): Use gimple_bind_block instead of gimple_block. * gcc.dg/debug/dwarf2/pr37726.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@140857 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/gimplify.c2
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.dg/debug/dwarf2/pr37726.c25
4 files changed, 37 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7084d185098..96499931370 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2008-10-03 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/37726
+ * gimplify.c (declare_vars): Use gimple_bind_block instead of
+ gimple_block.
+
2008-10-03 Pascal Obry <obry@adacore.com>
* gcov.c (create_file_names): Properly handle UNIX and DOS
diff --git a/gcc/gimplify.c b/gcc/gimplify.c
index d723d9f16a9..5123efdf321 100644
--- a/gcc/gimplify.c
+++ b/gcc/gimplify.c
@@ -772,7 +772,7 @@ declare_vars (tree vars, gimple scope, bool debug_info)
temps = nreverse (last);
- block = gimple_block (scope);
+ block = gimple_bind_block (scope);
gcc_assert (!block || TREE_CODE (block) == BLOCK);
if (!block || !debug_info)
{
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index f2c8bf235d2..9078edc460b 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2008-10-03 Jakub Jelinek <jakub@redhat.com>
+
+ PR debug/37726
+ * gcc.dg/debug/dwarf2/pr37726.c: New test.
+
2008-10-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/37719
diff --git a/gcc/testsuite/gcc.dg/debug/dwarf2/pr37726.c b/gcc/testsuite/gcc.dg/debug/dwarf2/pr37726.c
new file mode 100644
index 00000000000..60fb8396169
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/debug/dwarf2/pr37726.c
@@ -0,0 +1,25 @@
+/* PR debug/37726 */
+/* { dg-do compile } */
+/* { dg-options "-g -O0 -dA -fno-merge-debug-strings" } */
+
+int foo (int parm)
+{
+ int var = 0;
+ int bar (void)
+ {
+ return parm + var;
+ }
+ parm++;
+ var++;
+ return bar ();
+}
+
+int
+main (void)
+{
+ return foo (4) - 6;
+}
+
+/* Both parm and var variables should be in debug info for both foo and bar. */
+/* { dg-final { scan-assembler-times "\"parm\[^\n\]*\"\[^\n\]*DW_AT_name" 2 } } */
+/* { dg-final { scan-assembler-times "\"var\[^\n\]*\"\[^\n\]*DW_AT_name" 2 } } */