1 # |
1 # |
2 # Copyright (c) 2004, 2013, Oracle and/or its affiliates. All rights reserved. |
2 # Copyright (c) 2004, 2014, Oracle and/or its affiliates. All rights reserved. |
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 # |
4 # |
5 # This code is free software; you can redistribute it and/or modify it |
5 # This code is free software; you can redistribute it and/or modify it |
6 # under the terms of the GNU General Public License version 2 only, as |
6 # under the terms of the GNU General Public License version 2 only, as |
7 # published by the Free Software Foundation. |
7 # published by the Free Software Foundation. |
23 |
23 |
24 # @test |
24 # @test |
25 # @bug 4981566 5028634 5094412 6304984 7025786 7025789 8001112 8028545 8000961 |
25 # @bug 4981566 5028634 5094412 6304984 7025786 7025789 8001112 8028545 8000961 |
26 # @summary Check interpretation of -target and -source options |
26 # @summary Check interpretation of -target and -source options |
27 # @build CheckClassFileVersion |
27 # @build CheckClassFileVersion |
28 # @run shell check.sh |
28 # @run shell check.sh |
29 |
29 |
30 TESTJAVA=${TESTJAVA:?} |
30 TESTJAVA=${TESTJAVA:?} |
31 TC=${TESTCLASSES-.} |
31 TC=${TESTCLASSES-.} |
32 |
32 |
33 J="$TESTJAVA/bin/java" |
33 J="$TESTJAVA/bin/java" |
34 JC="$TESTJAVA/bin/javac" |
34 JC="$TESTJAVA/bin/javac" |
35 CFV="${TESTVMOPTS} -cp $TC CheckClassFileVersion" |
35 CFV="${TESTVMOPTS} -cp $TC CheckClassFileVersion" |
36 |
36 |
37 rm -f $TC/X.java $TC/X.java |
37 rm -f $TC/X.java $TC/X.java |
38 echo 'public class X { }' > $TC/X.java |
38 echo 'public class X { }' > $TC/X.java |
39 echo 'public enum Y { }' > $TC/Y.java |
39 echo 'public enum Y { }' > $TC/Y.java |
56 check_source_target() { |
56 check_source_target() { |
57 check_target $1 $2 $3 |
57 check_target $1 $2 $3 |
58 check_target $1 1.${2} $3 |
58 check_target $1 1.${2} $3 |
59 } |
59 } |
60 |
60 |
61 check 48.0 -source 1.4 |
|
62 |
61 |
63 check 49.0 -source 1.4 -target 1.5 |
|
64 check 49.0 -source 1.5 -target 1.5 |
|
65 |
|
66 check_target 50.0 1.4 6 |
|
67 check_target 50.0 1.5 6 |
|
68 check_source_target 50.0 6 6 |
62 check_source_target 50.0 6 6 |
69 |
63 |
70 check_target 51.0 1.4 7 |
|
71 check_target 51.0 1.5 7 |
|
72 check_source_target 51.0 6 7 |
64 check_source_target 51.0 6 7 |
73 check_source_target 51.0 7 7 |
65 check_source_target 51.0 7 7 |
74 |
66 |
75 check_target 52.0 1.4 8 |
|
76 check_target 52.0 1.5 8 |
|
77 check_source_target 52.0 6 8 |
67 check_source_target 52.0 6 8 |
78 check_source_target 52.0 7 8 |
68 check_source_target 52.0 7 8 |
79 check_source_target 52.0 8 8 |
69 check_source_target 52.0 8 8 |
80 |
70 |
81 check_target 52.0 1.5 9 |
|
82 check_source_target 52.0 8 9 |
71 check_source_target 52.0 8 9 |
83 check_source_target 52.0 9 9 |
72 check_source_target 52.0 9 9 |
84 |
73 |
85 # and finally the default with no options |
74 # and finally the default with no options |
86 check 52.0 |
75 check 52.0 |
113 checksrc16() { checksrc15 $* ; } |
102 checksrc16() { checksrc15 $* ; } |
114 checksrc17() { checksrc15 $* ; } |
103 checksrc17() { checksrc15 $* ; } |
115 checksrc18() { checksrc15 $* ; } |
104 checksrc18() { checksrc15 $* ; } |
116 checksrc19() { checksrc15 $* ; } |
105 checksrc19() { checksrc15 $* ; } |
117 |
106 |
118 checksrc14 -source 1.4 |
|
119 checksrc14 -source 1.4 -target 1.5 |
|
120 |
107 |
121 checksrc15 -source 1.5 |
|
122 checksrc15 -source 1.5 -target 1.5 |
|
123 |
108 |
124 checksrc16 -source 1.6 |
109 checksrc16 -source 1.6 |
125 checksrc16 -source 6 |
110 checksrc16 -source 6 |
126 checksrc16 -source 1.6 -target 1.6 |
111 checksrc16 -source 1.6 -target 1.6 |
127 checksrc16 -source 6 -target 6 |
112 checksrc16 -source 6 -target 6 |
142 checksrc19 -source 1.9 -target 1.9 |
127 checksrc19 -source 1.9 -target 1.9 |
143 checksrc19 -source 9 -target 9 |
128 checksrc19 -source 9 -target 9 |
144 checksrc19 -target 1.9 |
129 checksrc19 -target 1.9 |
145 checksrc19 -target 9 |
130 checksrc19 -target 9 |
146 |
131 |
147 fail -source 1.5 -target 1.4 $TC/X.java |
|
148 fail -source 1.6 -target 1.4 $TC/X.java |
|
149 fail -source 6 -target 1.4 $TC/X.java |
|
150 fail -source 1.6 -target 1.5 $TC/X.java |
132 fail -source 1.6 -target 1.5 $TC/X.java |
151 fail -source 6 -target 1.5 $TC/X.java |
133 fail -source 6 -target 1.5 $TC/X.java |
152 fail -source 7 -target 1.6 $TC/X.java |
134 fail -source 7 -target 1.6 $TC/X.java |
153 fail -source 8 -target 1.6 $TC/X.java |
135 fail -source 8 -target 1.6 $TC/X.java |
154 fail -source 8 -target 1.7 $TC/X.java |
136 fail -source 8 -target 1.7 $TC/X.java |