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
This commit is contained in:
parent
a0f20853ca
commit
31fcb1b9a9
5 changed files with 74 additions and 0 deletions
39
libjava/testsuite/libjava.lang/pr83.java
Normal file
39
libjava/testsuite/libjava.lang/pr83.java
Normal file
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue