diff options
author | Dehao Chen <dehao@google.com> | 2012-09-15 00:41:53 +0000 |
---|---|---|
committer | Dehao Chen <dehao@gcc.gnu.org> | 2012-09-15 00:41:53 +0000 |
commit | 820055a0ac3fcd19230eedacd223d5970d359023 (patch) | |
tree | 115ae76940c014469cce56102bf49986451e09d3 /libjava | |
parent | 71452ccd312778e267d76951267d37957c421aa1 (diff) | |
download | gcc-820055a0ac3fcd19230eedacd223d5970d359023.zip gcc-820055a0ac3fcd19230eedacd223d5970d359023.tar.gz gcc-820055a0ac3fcd19230eedacd223d5970d359023.tar.bz2 |
tree-eh.c (goto_queue_node): New field.
gcc:
* tree-eh.c (goto_queue_node): New field.
(record_in_goto_queue): New parameter.
(record_in_goto_queue_label): New parameter.
(lower_try_finally_dup_block): New parameter.
(maybe_record_in_goto_queue): Update source location.
(lower_try_finally_copy): Likewise.
(honor_protect_cleanup_actions): Likewise.
* gimplify.c (gimplify_expr): Reset the location to unknown.
testsuite:
* g++.dg/debug/dwarf2/deallocator.C: New test.
libjava:
* testsuite/libjava.lang/sourcelocation.java: New cases.
* testsuite/libjava.lang/sourcelocation.out: New cases.
From-SVN: r191338
Diffstat (limited to 'libjava')
-rw-r--r-- | libjava/ChangeLog | 5 | ||||
-rw-r--r-- | libjava/testsuite/libjava.lang/sourcelocation.jar | bin | 0 -> 946 bytes | |||
-rw-r--r-- | libjava/testsuite/libjava.lang/sourcelocation.java | 18 | ||||
-rw-r--r-- | libjava/testsuite/libjava.lang/sourcelocation.out | 3 |
4 files changed, 26 insertions, 0 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 25d6829..69b13d7 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,8 @@ +2012-09-14 Dehao Chen <dehao@google.com> + + * testsuite/libjava.lang/sourcelocation.java: New cases. + * testsuite/libjava.lang/sourcelocation.out: New cases. + 2012-09-14 David Edelsohn <dje.gcc@gmail.com> * configure: Regenerated. diff --git a/libjava/testsuite/libjava.lang/sourcelocation.jar b/libjava/testsuite/libjava.lang/sourcelocation.jar Binary files differnew file mode 100644 index 0000000..90f38f4 --- /dev/null +++ b/libjava/testsuite/libjava.lang/sourcelocation.jar diff --git a/libjava/testsuite/libjava.lang/sourcelocation.java b/libjava/testsuite/libjava.lang/sourcelocation.java new file mode 100644 index 0000000..6cf1e40 --- /dev/null +++ b/libjava/testsuite/libjava.lang/sourcelocation.java @@ -0,0 +1,18 @@ +/* This test should test the source location attribution. + We print the line number of different parts of the program to make sure + that the source code attribution is correct. + To make this test pass, one need to have up-to-date addr2line installed + to parse the dwarf4 data format. +*/ +public class sourcelocation { + public static void main(String args[]) { + try { + System.out.println(new Exception().getStackTrace()[0].getLineNumber()); + throw new Exception(); + } catch (Exception e) { + System.out.println(new Exception().getStackTrace()[0].getLineNumber()); + } finally { + System.out.println(new Exception().getStackTrace()[0].getLineNumber()); + } + } +} diff --git a/libjava/testsuite/libjava.lang/sourcelocation.out b/libjava/testsuite/libjava.lang/sourcelocation.out new file mode 100644 index 0000000..781c91b --- /dev/null +++ b/libjava/testsuite/libjava.lang/sourcelocation.out @@ -0,0 +1,3 @@ +10 +13 +15 |