From d7ebacec19caa5f6c70ccd938f8af4043d2273cf Mon Sep 17 00:00:00 2001 From: dehao Date: Sat, 15 Sep 2012 00:41:53 +0000 Subject: 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@191338 138bc75d-0d04-0410-961f-82ee72b054a4 --- libjava/ChangeLog | 5 +++++ libjava/testsuite/libjava.lang/sourcelocation.jar | Bin 0 -> 946 bytes libjava/testsuite/libjava.lang/sourcelocation.java | 18 ++++++++++++++++++ libjava/testsuite/libjava.lang/sourcelocation.out | 3 +++ 4 files changed, 26 insertions(+) create mode 100644 libjava/testsuite/libjava.lang/sourcelocation.jar create mode 100644 libjava/testsuite/libjava.lang/sourcelocation.java create mode 100644 libjava/testsuite/libjava.lang/sourcelocation.out (limited to 'libjava') diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 25d6829d60b..69b13d7222c 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,8 @@ +2012-09-14 Dehao Chen + + * testsuite/libjava.lang/sourcelocation.java: New cases. + * testsuite/libjava.lang/sourcelocation.out: New cases. + 2012-09-14 David Edelsohn * configure: Regenerated. diff --git a/libjava/testsuite/libjava.lang/sourcelocation.jar b/libjava/testsuite/libjava.lang/sourcelocation.jar new file mode 100644 index 00000000000..90f38f4b8bb Binary files /dev/null and b/libjava/testsuite/libjava.lang/sourcelocation.jar differ diff --git a/libjava/testsuite/libjava.lang/sourcelocation.java b/libjava/testsuite/libjava.lang/sourcelocation.java new file mode 100644 index 00000000000..6cf1e40ef4a --- /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 00000000000..781c91b5c39 --- /dev/null +++ b/libjava/testsuite/libjava.lang/sourcelocation.out @@ -0,0 +1,3 @@ +10 +13 +15 -- cgit v1.2.3