7018753: tools/javac/varargs/warning/Warn5.java times out on slow machines

Thu, 24 Feb 2011 08:40:49 -0800

author
jjh
date
Thu, 24 Feb 2011 08:40:49 -0800
changeset 892
3e30c95da3c6
parent 891
4b0491db73af
child 893
8f0dcb9499db

7018753: tools/javac/varargs/warning/Warn5.java times out on slow machines
Summary: Use a single file manager for all JavacTasks
Reviewed-by: jjg, mcimadamore

test/tools/javac/varargs/6199075/T6199075.java file | annotate | diff | comparison | revisions
test/tools/javac/varargs/warning/Warn4.java file | annotate | diff | comparison | revisions
test/tools/javac/varargs/warning/Warn5.java file | annotate | diff | comparison | revisions
     1.1 --- a/test/tools/javac/varargs/6199075/T6199075.java	Wed Feb 23 10:34:45 2011 -0800
     1.2 +++ b/test/tools/javac/varargs/6199075/T6199075.java	Thu Feb 24 08:40:49 2011 -0800
     1.3 @@ -37,6 +37,7 @@
     1.4  import com.sun.tools.classfile.Code_attribute;
     1.5  import com.sun.tools.classfile.ConstantPool.*;
     1.6  import com.sun.tools.classfile.Method;
     1.7 +import com.sun.tools.javac.api.JavacTool;
     1.8  import com.sun.tools.javac.util.List;
     1.9  
    1.10  import java.io.File;
    1.11 @@ -47,6 +48,7 @@
    1.12  import javax.tools.JavaCompiler;
    1.13  import javax.tools.JavaFileObject;
    1.14  import javax.tools.SimpleJavaFileObject;
    1.15 +import javax.tools.StandardJavaFileManager;
    1.16  import javax.tools.ToolProvider;
    1.17  
    1.18  public class T6199075 {
    1.19 @@ -157,11 +159,14 @@
    1.20          System.out.println("Bytecode checks made: " + bytecodeCheckCount);
    1.21      }
    1.22  
    1.23 +    // Create a single file manager and reuse it for each compile to save time.
    1.24 +    StandardJavaFileManager fm = JavacTool.create().getStandardFileManager(null, null, null);
    1.25 +
    1.26      void compileAndCheck(VarargsMethod m1, VarargsMethod m2, TypeKind actual, ArgumentsArity argsArity) throws Exception {
    1.27          final JavaCompiler tool = ToolProvider.getSystemJavaCompiler();
    1.28          JavaSource source = new JavaSource(m1, m2, actual, argsArity);
    1.29          ErrorChecker ec = new ErrorChecker();
    1.30 -        JavacTask ct = (JavacTask)tool.getTask(null, null, ec,
    1.31 +        JavacTask ct = (JavacTask)tool.getTask(null, fm, ec,
    1.32                  null, null, Arrays.asList(source));
    1.33          ct.generate();
    1.34          check(source, ec, m1, m2, actual, argsArity);
     2.1 --- a/test/tools/javac/varargs/warning/Warn4.java	Wed Feb 23 10:34:45 2011 -0800
     2.2 +++ b/test/tools/javac/varargs/warning/Warn4.java	Thu Feb 24 08:40:49 2011 -0800
     2.3 @@ -29,6 +29,7 @@
     2.4   * @run main Warn4
     2.5   */
     2.6  import com.sun.source.util.JavacTask;
     2.7 +import com.sun.tools.javac.api.JavacTool;
     2.8  import java.net.URI;
     2.9  import java.util.Arrays;
    2.10  import java.util.Set;
    2.11 @@ -37,6 +38,7 @@
    2.12  import javax.tools.JavaCompiler;
    2.13  import javax.tools.JavaFileObject;
    2.14  import javax.tools.SimpleJavaFileObject;
    2.15 +import javax.tools.StandardJavaFileManager;
    2.16  import javax.tools.ToolProvider;
    2.17  
    2.18  public class Warn4 {
    2.19 @@ -187,12 +189,15 @@
    2.20          }
    2.21      }
    2.22  
    2.23 +    // Create a single file manager and reuse it for each compile to save time.
    2.24 +    static StandardJavaFileManager fm = JavacTool.create().getStandardFileManager(null, null, null);
    2.25 +
    2.26      static void test(SourceLevel sourceLevel, TrustMe trustMe, SuppressLevel suppressLevelClient,
    2.27              SuppressLevel suppressLevelDecl, ModifierKind modKind, Signature vararg_meth, Signature client_meth) throws Exception {
    2.28          final JavaCompiler tool = ToolProvider.getSystemJavaCompiler();
    2.29          JavaSource source = new JavaSource(trustMe, suppressLevelClient, suppressLevelDecl, modKind, vararg_meth, client_meth);
    2.30          DiagnosticChecker dc = new DiagnosticChecker();
    2.31 -        JavacTask ct = (JavacTask)tool.getTask(null, null, dc,
    2.32 +        JavacTask ct = (JavacTask)tool.getTask(null, fm, dc,
    2.33                  Arrays.asList("-Xlint:unchecked", "-source", sourceLevel.sourceKey),
    2.34                  null, Arrays.asList(source));
    2.35          ct.generate(); //to get mandatory notes
     3.1 --- a/test/tools/javac/varargs/warning/Warn5.java	Wed Feb 23 10:34:45 2011 -0800
     3.2 +++ b/test/tools/javac/varargs/warning/Warn5.java	Thu Feb 24 08:40:49 2011 -0800
     3.3 @@ -29,6 +29,7 @@
     3.4   * @run main Warn5
     3.5   */
     3.6  import com.sun.source.util.JavacTask;
     3.7 +import com.sun.tools.javac.api.JavacTool;
     3.8  import java.net.URI;
     3.9  import java.util.ArrayList;
    3.10  import java.util.Arrays;
    3.11 @@ -36,6 +37,7 @@
    3.12  import javax.tools.JavaCompiler;
    3.13  import javax.tools.JavaFileObject;
    3.14  import javax.tools.SimpleJavaFileObject;
    3.15 +import javax.tools.StandardJavaFileManager;
    3.16  import javax.tools.ToolProvider;
    3.17  
    3.18  public class Warn5 {
    3.19 @@ -207,12 +209,15 @@
    3.20          }
    3.21      }
    3.22  
    3.23 +    // Create a single file manager and reuse it for each compile to save time.
    3.24 +    static StandardJavaFileManager fm = JavacTool.create().getStandardFileManager(null, null, null);
    3.25 +
    3.26      static void test(SourceLevel sourceLevel, XlintOption xlint, TrustMe trustMe, SuppressLevel suppressLevel,
    3.27              ModifierKind modKind, MethodKind methKind, SignatureKind sig, BodyKind body) throws Exception {
    3.28          final JavaCompiler tool = ToolProvider.getSystemJavaCompiler();
    3.29          JavaSource source = new JavaSource(trustMe, suppressLevel, modKind, methKind, sig, body);
    3.30          DiagnosticChecker dc = new DiagnosticChecker();
    3.31 -        JavacTask ct = (JavacTask)tool.getTask(null, null, dc,
    3.32 +        JavacTask ct = (JavacTask)tool.getTask(null, fm, dc,
    3.33                  Arrays.asList(xlint.getXlintOption(), "-source", sourceLevel.sourceKey), null, Arrays.asList(source));
    3.34          ct.analyze();
    3.35          check(sourceLevel, dc, source, xlint, trustMe,

mercurial