Lambda does not compile against JDK8 binary snapshot as boot JDK
Jonathan Gibbons
jonathan.gibbons at oracle.com
Tue Nov 27 10:56:41 PST 2012
Eric,
Please post a request for review for your patch on
compiler-dev at openjdk.java.net.
-- Jon
On 11/27/2012 09:51 AM, Eric Caspole wrote:
> Hi everybody,
> As Remi said, this problem does not happen anymore, but I fixed the
> javac imports anyway which seemed worthwhile. I am not sure if this is
> the right list for javac mods but maybe you can suggest how to proceed.
>
> http://cr.openjdk.java.net/~ecaspole/javac_imports/webrev.00/
>
> Thanks,
> Eric
>
>
>
> On 11/15/2012 11:05 AM, Remi Forax wrote:
>> On 11/15/2012 04:55 PM, Caspole, Eric wrote:
>>> Hi lambda people,
>>> I seem to have found a problem when using the last week's lamdba binary snapshot as the boot JDK for the build. The build works fine if the boot JDK is 7u9. I don't think I ever tried this combination before.
>>>
>>> Looks like there is a new java.util.Mapping in 8. So I think the guilty thing is use of java.util.* in src/share/classes/com/sun/tools/javac/code/Types.java?
>>>
>>> 26 package com.sun.tools.javac.code;
>>> 27
>>> 28 import java.lang.ref.SoftReference;
>>> 29 import java.util.*;
>>> 30
>>>
>>> Regards,
>>> Eric
>> Classical import * bug.
>> BTW, java.util.Mapping was removed very recently, so it should work again.
>>
>> Rémi
>>
>>> Here is my build output:
>>>
>>> ecaspole at ecaspole-desktop:~/Documents/121115/lambda/common/makefiles$ java -version
>>> openjdk version "1.8.0-ea"
>>> OpenJDK Runtime Environment (build 1.8.0-ea-lambda-nightly-h1745-20121105-b64-b00)
>>> OpenJDK 64-Bit Server VM (build 25.0-b05, mixed mode)
>>>
>>> ====================================================
>>> A new configuration has been successfully created in
>>> /home/ecaspole/Documents/121115/lambda/build/linux-x86_64-normal-server-release
>>> using default settings.
>>>
>>> Configuration summary:
>>> * Debug level: release
>>> * JDK variant: normal
>>> * JVM variants: server
>>> * OpenJDK target: OS: linux, CPU architecture: x86, address length: 64
>>> * Boot JDK: /opt/jdk1.8.0
>>>
>>> Build performance summary:
>>> * Cores to use: 4
>>> * Memory limit: 7986 MB
>>> * ccache status: not installed (consider installing)
>>>
>>> ...
>>>
>>> ecaspole at ecaspole-desktop:~/Documents/121115/lambda/common/makefiles$ make images
>>> Building OpenJDK for target 'images' in configuration 'linux-x86_64-normal-server-release'
>>>
>>>
>>> ########################################################################
>>> ########################################################################
>>> ##### Entering langtools for target(s) all #####
>>> ########################################################################
>>>
>>> Compiling 2 files for BUILD_TOOLS
>>> /home/ecaspole/Documents/121115/lambda/langtools/src/share/classes/com/sun/tools/javac/code/Types.java:1519: error: reference to Mapping is ambiguous
>>> private final Mapping lowerBoundMapping = new Mapping("lowerBound") {
>>> ^
>>> both class com.sun.tools.javac.code.Type.Mapping in Type and interface java.util.Mapping in java.util match
>>> /home/ecaspole/Documents/121115/lambda/langtools/src/share/classes/com/sun/tools/javac/code/Types.java:1633: error: reference to Mapping is ambiguous
>>> private Mapping elemTypeFun = new Mapping ("elemTypeFun") {
>>> ^
>>> both class com.sun.tools.javac.code.Type.Mapping in Type and interface java.util.Mapping in java.util match
>>> /home/ecaspole/Documents/121115/lambda/langtools/src/share/classes/com/sun/tools/javac/code/Types.java:1943: error: reference to Mapping is ambiguous
>>> private Mapping erasureFun = new Mapping ("erasure") {
>>> ^
>>> both class com.sun.tools.javac.code.Type.Mapping in Type and interface java.util.Mapping in java.util match
>>> /home/ecaspole/Documents/121115/lambda/langtools/src/share/classes/com/sun/tools/javac/code/Types.java:1947: error: reference to Mapping is ambiguous
>>> private Mapping erasureRecFun = new Mapping ("erasureRecursive") {
>>> ^
>>> both class com.sun.tools.javac.code.Type.Mapping in Type and interface java.util.Mapping in java.util match
>>> /home/ecaspole/Documents/121115/lambda/langtools/src/share/classes/com/sun/tools/javac/code/Types.java:2802: error: reference to Mapping is ambiguous
>>> static private Mapping newInstanceFun = new Mapping("newInstanceFun") {
>>> ^
>>> both class com.sun.tools.javac.code.Type.Mapping in Type and interface java.util.Mapping in java.util match
>>> /home/ecaspole/Documents/121115/lambda/langtools/src/share/classes/com/sun/tools/javac/code/Types.java:1519: error: reference to Mapping is ambiguous
>>> private final Mapping lowerBoundMapping = new Mapping("lowerBound") {
>>> ^
>>> both class com.sun.tools.javac.code.Type.Mapping in Type and interface java.util.Mapping in java.util match
>>> /home/ecaspole/Documents/121115/lambda/langtools/src/share/classes/com/sun/tools/javac/code/Types.java:1633: error: reference to Mapping is ambiguous
>>> private Mapping elemTypeFun = new Mapping ("elemTypeFun") {
>>> ^
>>> both class com.sun.tools.javac.code.Type.Mapping in Type and interface java.util.Mapping in java.util match
>>> /home/ecaspole/Documents/121115/lambda/langtools/src/share/classes/com/sun/tools/javac/code/Types.java:1943: error: reference to Mapping is ambiguous
>>> private Mapping erasureFun = new Mapping ("erasure") {
>>> ^
>>> both class com.sun.tools.javac.code.Type.Mapping in Type and interface java.util.Mapping in java.util match
>>> /home/ecaspole/Documents/121115/lambda/langtools/src/share/classes/com/sun/tools/javac/code/Types.java:1947: error: reference to Mapping is ambiguous
>>> private Mapping erasureRecFun = new Mapping ("erasureRecursive") {
>>> ^
>>> both class com.sun.tools.javac.code.Type.Mapping in Type and interface java.util.Mapping in java.util match
>>> /home/ecaspole/Documents/121115/lambda/langtools/src/share/classes/com/sun/tools/javac/code/Types.java:2802: error: reference to Mapping is ambiguous
>>> static private Mapping newInstanceFun = new Mapping("newInstanceFun") {
>>> ^
>>> both class com.sun.tools.javac.code.Type.Mapping in Type and interface java.util.Mapping in java.util match
>>> 10 errors
>>> make[1]: *** No rule to make target `all', needed by `default'. Stop.
>>> make: *** [langtools-only] Error 2
>>>
>>>
>>
>>
>
More information about the lambda-dev
mailing list