hg: valhalla/valhalla: [lworld] Withdraw support for the __Flattenable and __NotFlattened field modifiers.

Tobias Hartmann tobias.hartmann at oracle.com
Tue Jun 26 08:52:50 UTC 2018


Hi,

this change breaks all our value types tests because we are extensively using the __Flattenable and
__NotFlattened modifiers (see last Mach5 results email). I understand that we don't want to support
__NotFlattened for lw1 but shouldn't we leave the functionality in and guard it by an (experimental)
javac flag or something?

Thanks,
Tobias

On 26.06.2018 09:41, Srikanth wrote:
> 
> 
> On Tuesday 26 June 2018 01:03 PM, srikanth.adayapalam at oracle.com wrote:
>> Changeset: 8b2ca4fdb101
>> Author:    sadayapalam
>> Date:      2018-06-26 13:02 +0530
>> URL:       http://hg.openjdk.java.net/valhalla/valhalla/rev/8b2ca4fdb101
>>
>> [lworld] Withdraw support for the __Flattenable and __NotFlattened field modifiers.
> 
> Hi Karen,
> 
> This change set removes source level support for the field modifiers __Flattenable and __NotFlattened.
> Per your suggestion/request, I have still left in ACC_FLATTENABLE. All instance fields declared as
> value types are marked as ACC_FLATTENABLE at the class file for LW1 and the static fields are not so
> marked.
> 
> However, in the course of implementing this, it occurred to me that we may as well have gone the
> whole way and the flag ACC_FLATTENABLE may also have been completely withdrawn - It is not clear to
> me that the "All instance fields declared as value types are marked as ACC_FLATTENABLE at the class
> file for LW1 and the static fields are not so marked." strategy offers much for the VM - this could
> have been "derived" by the VM without their being a flag such as ACC_FLATTENABLE.
> 
> But I will wait for a go from you before getting rid of all traces of ACC_FLATTENABLE.
> 
> Thanks!
> Srikanth
> 
> 
>>
>> ! src/java.compiler/share/classes/javax/lang/model/element/Modifier.java
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/code/Flags.java
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Attr.java
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/comp/Check.java
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassReader.java
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/jvm/ClassWriter.java
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/JavacParser.java
>> ! src/jdk.compiler/share/classes/com/sun/tools/javac/parser/Tokens.java
>> ! src/jdk.jshell/share/classes/jdk/jshell/CompletenessAnalyzer.java
>> ! test/langtools/tools/javac/valhalla/lworld-values/CheckDefaultFlattenable.java
>> ! test/langtools/tools/javac/valhalla/lworld-values/CheckFlattenableCycles.java
>> ! test/langtools/tools/javac/valhalla/lworld-values/CheckFlattenableCycles.out
>> ! test/langtools/tools/javac/valhalla/lworld-values/FlattenableFlagFromClass.java
>> ! test/langtools/tools/javac/valhalla/lworld-values/FlattenableFlagTest.java
>> ! test/langtools/tools/javac/valhalla/lworld-values/FlattenableNegativeTest.java
>> ! test/langtools/tools/javac/valhalla/lworld-values/FlattenableNegativeTest.out
>> ! test/langtools/tools/javac/valhalla/lworld-values/Point.java
>>
> 



More information about the valhalla-dev mailing list