From 31fcb1b9a976c1562de7f45dba8109359f8939be Mon Sep 17 00:00:00 2001 From: Anthony Green Date: Sun, 16 Jan 2000 19:55:09 +0000 Subject: [PATCH] pr83.out: New file. * libjava.lang/pr83.out: New file. * libjava.lang/pr83.java: New file. * libjava.lang/pr109.out: New file. * libjava.lang/pr109.java: New file. From-SVN: r31446 --- libjava/testsuite/ChangeLog | 8 +++++++ libjava/testsuite/libjava.lang/pr109.java | 25 ++++++++++++++++++++ libjava/testsuite/libjava.lang/pr109.out | 1 + libjava/testsuite/libjava.lang/pr83.java | 39 +++++++++++++++++++++++++++++++ libjava/testsuite/libjava.lang/pr83.out | 1 + 5 files changed, 74 insertions(+) create mode 100644 libjava/testsuite/libjava.lang/pr109.java create mode 100644 libjava/testsuite/libjava.lang/pr109.out create mode 100644 libjava/testsuite/libjava.lang/pr83.java create mode 100644 libjava/testsuite/libjava.lang/pr83.out diff --git a/libjava/testsuite/ChangeLog b/libjava/testsuite/ChangeLog index e9a756f..96ba628 100644 --- a/libjava/testsuite/ChangeLog +++ b/libjava/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2000-01-16 Anthony Green + + * libjava.lang/pr83.out: New file. + * libjava.lang/pr83.java: New file. + + * libjava.lang/pr109.out: New file. + * libjava.lang/pr109.java: New file. + 2000-01-11 Tom Tromey * libjava.lang/klass.out: New file. diff --git a/libjava/testsuite/libjava.lang/pr109.java b/libjava/testsuite/libjava.lang/pr109.java new file mode 100644 index 0000000..afb07e7 --- /dev/null +++ b/libjava/testsuite/libjava.lang/pr109.java @@ -0,0 +1,25 @@ +// PR 109 + +// Running the test code produces the output "0" instead of the +// expected "01234". + +// The break statement exits both for-loops (not just the innermost +// one) if the (single statement) body of the outer for-loop is not +// enclosed in braces. Affects more deeply nested loops in the same +// way. + +public class pr109 +{ + public static void main (String argv[]) + { + int i, j; + + for (i = 0; i < 5; i++) + for (j = 0; j < 2; j++) + { + if (j == 1) + break; + System.out.print (i); + } + } +} diff --git a/libjava/testsuite/libjava.lang/pr109.out b/libjava/testsuite/libjava.lang/pr109.out new file mode 100644 index 0000000..3521a84 --- /dev/null +++ b/libjava/testsuite/libjava.lang/pr109.out @@ -0,0 +1 @@ +01234 diff --git a/libjava/testsuite/libjava.lang/pr83.java b/libjava/testsuite/libjava.lang/pr83.java new file mode 100644 index 0000000..b209aff --- /dev/null +++ b/libjava/testsuite/libjava.lang/pr83.java @@ -0,0 +1,39 @@ +// PR 83 + +/* + * test that caught null pointers exceptions in finalizers work correctly + * and that local variables are accessible in null pointer exception handlers. + */ +import java.io.*; + +public class pr83 { + + static String s; + + public static void main(String[] args) { + System.out.println(tryfinally() + s); + } + + public static String tryfinally() { + String yuck = null; + String local_s = null; + + try { + return "This is "; + } finally { + try { + local_s = "Perfect"; + /* trigger null pointer exception */ + String x = yuck.toLowerCase(); + } catch (Exception _) { + /* + * when the null pointer exception is caught, we must still + * be able to access local_s. + * Our return address for the finally clause must also still + * be intact. + */ + s = local_s; + } + } + } +} diff --git a/libjava/testsuite/libjava.lang/pr83.out b/libjava/testsuite/libjava.lang/pr83.out new file mode 100644 index 0000000..6a87582 --- /dev/null +++ b/libjava/testsuite/libjava.lang/pr83.out @@ -0,0 +1 @@ +This is Perfect -- 2.7.4