test/tools/javac/constDebug/ConstDebugTest.java

Tue, 19 Feb 2013 17:53:16 +0000

author
vromero
date
Tue, 19 Feb 2013 17:53:16 +0000
changeset 1591
dc8b7aa7cef3
child 1819
7fe655cad9b1
permissions
-rw-r--r--

8006212: javac, convert jtreg tests from shell script to java
Reviewed-by: jjg

vromero@1591 1 /*
vromero@1591 2 * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
vromero@1591 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
vromero@1591 4 *
vromero@1591 5 * This code is free software; you can redistribute it and/or modify it
vromero@1591 6 * under the terms of the GNU General Public License version 2 only, as
vromero@1591 7 * published by the Free Software Foundation.
vromero@1591 8 *
vromero@1591 9 * This code is distributed in the hope that it will be useful, but WITHOUT
vromero@1591 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
vromero@1591 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
vromero@1591 12 * version 2 for more details (a copy is included in the LICENSE file that
vromero@1591 13 * accompanied this code).
vromero@1591 14 *
vromero@1591 15 * You should have received a copy of the GNU General Public License version
vromero@1591 16 * 2 along with this work; if not, write to the Free Software Foundation,
vromero@1591 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
vromero@1591 18 *
vromero@1591 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
vromero@1591 20 * or visit www.oracle.com if you need additional information or have any
vromero@1591 21 * questions.
vromero@1591 22 */
vromero@1591 23
vromero@1591 24 /*
vromero@1591 25 * @test
vromero@1591 26 * @bug 4645152 4785453
vromero@1591 27 * @summary javac compiler incorrectly inserts <clinit> when -g is specified
vromero@1591 28 * @library /tools/javac/lib
vromero@1591 29 * @build ToolBox
vromero@1591 30 * @run compile -g ConstDebugTest.java
vromero@1591 31 * @run main ConstDebugTest
vromero@1591 32 */
vromero@1591 33
vromero@1591 34 //original test: test/tools/javac/constDebug/ConstDebug.sh
vromero@1591 35 public class ConstDebugTest {
vromero@1591 36
vromero@1591 37 public static final long l = 12;
vromero@1591 38
vromero@1591 39 public static void main(String args[]) throws Exception {
vromero@1591 40 // "${TESTJAVA}${FS}bin${FS}javac" ${TESTTOOLVMOPTS} -g -d . -classpath .${PS}${TESTSRC} $1.java 2> ${TMP1}
vromero@1591 41 // if "${TESTJAVA}${FS}bin${FS}javap" $1.class | grep clinit; then fail
vromero@1591 42 ToolBox.JavaToolArgs javapArgs =
vromero@1591 43 new ToolBox.JavaToolArgs().setAllArgs("-v",
vromero@1591 44 "-classpath", System.getProperty("test.classes"), "ConstDebugTest.class");
vromero@1591 45 if (ToolBox.javap(javapArgs).contains("clinit")) {
vromero@1591 46 throw new AssertionError(
vromero@1591 47 "javac should not create a <clinit> method for ConstDebugTest class");
vromero@1591 48 }
vromero@1591 49 }
vromero@1591 50
vromero@1591 51 }

mercurial