Thu, 04 Nov 2010 12:57:48 +0000
6993963: Project Coin: Use precise exception analysis for effectively final catch parameters
Summary: More precise rethrow analysis should be extended to effectively-final exception parameters. Multicatch parameters should be made implicitly final.
Reviewed-by: jjg, darcy
1 #! /bin/sh -f
3 #
4 # Copyright (c) 2006, 2009, Oracle and/or its affiliates. All rights reserved.
5 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 #
7 # This code is free software; you can redistribute it and/or modify it
8 # under the terms of the GNU General Public License version 2 only, as
9 # published by the Free Software Foundation.
10 #
11 # This code is distributed in the hope that it will be useful, but WITHOUT
12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 # version 2 for more details (a copy is included in the LICENSE file that
15 # accompanied this code).
16 #
17 # You should have received a copy of the GNU General Public License version
18 # 2 along with this work; if not, write to the Free Software Foundation,
19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 #
21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 # or visit www.oracle.com if you need additional information or have any
23 # questions.
24 #
26 #
27 # @test
28 # @bug 6257087
29 # @run shell foo.sh
32 TS=${TESTSRC-.}
33 TC=${TESTCLASSES-.}
35 if [ "${TESTJAVA}" = "" ]
36 then
37 echo "TESTJAVA not set. Test cannot execute. Failed."
38 exit 1
39 fi
41 # set platform-dependent variables
42 OS=`uname -s`
43 case "$OS" in
44 SunOS | Linux )
45 PS=":"
46 FS="/"
47 ;;
48 CYGWIN* )
49 PS=":"
50 FS="/"
51 DIFFOPTS="--strip-trailing-cr"
52 ;;
53 Windows* )
54 PS=";"
55 FS="\\"
56 ;;
57 * )
58 echo "Unrecognized system!"
59 exit 1;
60 ;;
61 esac
63 "${TESTJAVA}${FS}bin${FS}javac" ${TESTTOOLVMOPTS} -d "${TC}" "${TS}${FS}foo.java"
64 "${TESTJAVA}${FS}bin${FS}javah" ${TESTTOOLVMOPTS} -classpath "${TC}" -d "${TC}" foo
65 diff ${DIFFOPTS} -c "${TS}${FS}foo_bar.h" "${TC}${FS}foo_bar.h"
66 result=$?
68 if [ $result -eq 0 ]
69 then
70 echo "Passed"
71 else
72 echo "Failed"
73 fi
74 exit $result