hg: lambda/lambda/langtools: Switch to inlined extension method body code-generation strategy.

maurizio.cimadamore at oracle.com maurizio.cimadamore at oracle.com
Mon Dec 12 08:31:24 PST 2011


Changeset: db92b1be943f
Author:    mcimadamore
Date:      2011-12-12 16:29 +0000
URL:       http://hg.openjdk.java.net/lambda/lambda/langtools/rev/db92b1be943f

Switch to inlined extension method body code-generation strategy.
The compiler will now emit a code attribute for extension methods, rather than relying on the Defender attribute.
Therefore, extension methods are interface methods with the ACC_DEFENDER bit set, and whose ACC_ABSTRACT bit is not set.

! src/share/classes/com/sun/tools/classfile/Attribute.java
! src/share/classes/com/sun/tools/classfile/ClassWriter.java
- src/share/classes/com/sun/tools/classfile/Defender_attribute.java
! src/share/classes/com/sun/tools/javac/code/Symbol.java
! src/share/classes/com/sun/tools/javac/comp/Attr.java
! src/share/classes/com/sun/tools/javac/comp/Lower.java
! src/share/classes/com/sun/tools/javac/comp/MemberEnter.java
! src/share/classes/com/sun/tools/javac/jvm/ClassReader.java
! src/share/classes/com/sun/tools/javac/jvm/ClassWriter.java
! src/share/classes/com/sun/tools/javac/jvm/Gen.java
! src/share/classes/com/sun/tools/javac/resources/compiler.properties
! src/share/classes/com/sun/tools/javap/AttributeWriter.java
- test/tools/javac/defender/TestDefenderAttribute.java
! test/tools/javac/defender/TestInlinedDefenderBody.java
! test/tools/javac/defender/TestNoBridgeOnDefenders.java
! test/tools/javac/diags/examples.not-yet.txt



More information about the lambda-dev mailing list