Builds fail due to use of preview features & removed arguments
David Holmes
david.holmes at oracle.com
Thu Dec 19 23:30:32 UTC 2019
Hi Ty,
On 20/12/2019 9:23 am, Ty Young wrote:
> Hi,
>
>
> As of the merging of Records into JDK proper, source code compiling
> fails using a standard command line of:
>
>
> bash configure --disable-warnings-as-errors
I would have expected that to ensure the warnings were NOT treated as an
error. Is there some build system bug here? Or is there some
double-negative at play ??
>
> which fails with:
>
>
> /home/ty/Downloads/jdk-master/src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor14.java:30:
> warning: [preview] RecordComponentElement is an API that is part of a
> preview feature
> import javax.lang.model.element.RecordComponentElement;
> ^
> /home/ty/Downloads/jdk-master/src/java.compiler/share/classes/javax/lang/model/util/SimpleElementVisitor14.java:30:
> warning: [preview] RecordComponentElement is an API that is part of a
> preview feature
> import javax.lang.model.element.RecordComponentElement;
> ^
> error: warnings found and -Werror specified
I think this is more an issue for the language and compiler folk on
compiler-dev. I'm not clear on all the rules around use of preview
features but it seems to me that if we are using them internally and
that generates warnings then we should be suppressing those warnings
(@supressedWarning) at those call sites. Though I don't know whether you
can suppress a warning for an import statement??
David
-----
>
> ...which was not the case in 13. I'm assuming this is happening now
> because JDK source code actually utilizes the feature preview where as
> with other preview features before simply existed but weren't used in
> source.
>
>
> I've been told by a JDK developer from the Project Panama mailing list
> that it *does* compile for them, but I'm not aware of the command line
> arguments that JDK developers use. Is this documented somewhere? Should
> it be failing by default like this?
>
>
> Additionally, the argument --with-libclang-include-aux seems to have
> been deprecated in 14. This, as was told to me by a Panama JDK
> developer, is needed to specify clang headers for custom source builds.
> What is the correct way to specify those now in 14?
>
More information about the build-dev
mailing list