JDK 14 RFR of 8230734: Remove default constructors from java.compiler

Jonathan Gibbons jonathan.gibbons at oracle.com
Wed Sep 11 15:46:55 UTC 2019


Joe,

OK, but note possible inconsistent indentation in one of the comments.

Since you're deprecating one constructor for removal, does that need a CSR?

-- Jon

On 9/8/19 8:06 PM, Joe Darcy wrote:
> Hello,
>
> Please review the removal of two default constructors from java.compiler:
>
>     8230734: Remove default constructors from java.compiler
>     webrev: http://cr.openjdk.java.net/~darcy/8230734.0/
>     CSR:https://bugs.openjdk.java.net/browse/JDK-8230739
>
> Patch below. One constructor is deprecated for removal since the class 
> otherwise only has static members.
>
> Note that including this change will require an MR for JSR 199.
>
> Thanks,
>
> -Joe
>
> --- 
> old/src/java.compiler/share/classes/javax/tools/DiagnosticCollector.java 
> 2019-09-08 19:55:24.828001000 -0700
> +++ 
> new/src/java.compiler/share/classes/javax/tools/DiagnosticCollector.java 
> 2019-09-08 19:55:24.688001000 -0700
> @@ -1,5 +1,5 @@
>  /*
> - * Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights 
> reserved.
> + * Copyright (c) 2006, 2019, Oracle and/or its affiliates. All rights 
> reserved.
>   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
>   *
>   * This code is free software; you can redistribute it and/or modify it
> @@ -43,6 +43,11 @@
>      private List<Diagnostic<? extends S>> diagnostics =
>              Collections.synchronizedList(new ArrayList<Diagnostic<? 
> extends S>>());
>
> +    /**
> +     * Creates a new instance of DiagnosticCollector.
> +     */
> +    public DiagnosticCollector() {}
> +
>      public void report(Diagnostic<? extends S> diagnostic) {
>          Objects.requireNonNull(diagnostic);
>          diagnostics.add(diagnostic);
> --- old/src/java.compiler/share/classes/javax/tools/ToolProvider.java 
> 2019-09-08 19:55:25.164001000 -0700
> +++ new/src/java.compiler/share/classes/javax/tools/ToolProvider.java 
> 2019-09-08 19:55:25.032001000 -0700
> @@ -1,5 +1,5 @@
>  /*
> - * Copyright (c) 2005, 2018, Oracle and/or its affiliates. All rights 
> reserved.
> + * Copyright (c) 2005, 2019, Oracle and/or its affiliates. All rights 
> reserved.
>   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
>   *
>   * This code is free software; you can redistribute it and/or modify it
> @@ -45,6 +45,12 @@
>      private static final String systemJavaCompilerName   = 
> "com.sun.tools.javac.api.JavacTool";
>
>      /**
> +     * Do not call.
> +     */
> +    @Deprecated(forRemoval=true, since="14")
> +    public ToolProvider() {}
> +
> +    /**
>       * Returns the Java™ programming language compiler provided
>       * with this platform.
>       * <p>The file manager returned by calling
>


More information about the compiler-dev mailing list