> In #30392, we found out some impl classes in FFM are marked as value based > class, but they do not have `@ValueBased`. > I grep'ed JDK sources with 'ValueBased.html' which we expect that the word in > Javadoc on value based class, and I tracked it to final implementation class. > `final` classes in following list should have `@ValueBased`. > > > > java.base/share/classes/java/lang/foreign/FunctionDescriptor.java > public sealed interface FunctionDescriptor permits FunctionDescriptorImpl > public final class FunctionDescriptorImpl implements FunctionDescriptor > > java.base/share/classes/java/lang/foreign/MemoryLayout.java > public sealed interface MemoryLayout permits SequenceLayout, GroupLayout, > PaddingLayout, ValueLayout > public sealed interface SequenceLayout extends MemoryLayout permits > SequenceLayoutImpl > public final class SequenceLayoutImpl extends > AbstractLayout<SequenceLayoutImpl> implements SequenceLayout > public sealed interface GroupLayout extends MemoryLayout permits > StructLayout, UnionLayout > public sealed interface StructLayout extends GroupLayout permits > StructLayoutImpl > public final class StructLayoutImpl extends > AbstractGroupLayout<StructLayoutImpl> implements StructLayout > public sealed interface UnionLayout extends GroupLayout permits > UnionLayoutImpl > public final class UnionLayoutImpl extends > AbstractGroupLayout<UnionLayoutImpl> implements UnionLayout > public sealed interface PaddingLayout extends MemoryLayout permits > PaddingLayoutImpl > public final class PaddingLayoutImpl extends > AbstractLayout<PaddingLayoutImpl> implements PaddingLayout > public sealed interface ValueLayout extends MemoryLayout permits > ValueLayout.OfBoolean, ValueLayout.OfByte, ValueLayout.OfChar, > ValueLayout.OfShort, ValueLayout.OfInt, ValueLayout.OfFloat, > ValueLayout.OfLong, ValueLayout.OfDouble, AddressLayout > sealed interface OfBoolean extends ValueLayout permits > ValueLayouts.OfBooleanImpl > public static final class OfBooleanImpl extends > AbstractValueLayout<OfBooleanImpl> implements ValueLayout.OfBoolean > sealed interface OfByte extends ValueLayout permits > ValueLayouts.OfByteImpl > public static final class OfByteImpl extends > AbstractValueLayout<OfByteImpl> implements ValueLayout.OfByte > sealed interface OfChar extends ValueLayout permits > ValueLayouts.OfCharImpl > public static final class OfCharImpl extends > AbstractValueLayout<OfCharImpl> implements ValueLayout.OfChar > sealed interface OfSho...
Yasumasa Suenaga has updated the pull request incrementally with one additional commit since the last revision: Revert changes for FunctionDescriptor and Linker ------------- Changes: - all: https://git.openjdk.org/jdk/pull/30443/files - new: https://git.openjdk.org/jdk/pull/30443/files/4e90235a..c62c41cc Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=30443&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=30443&range=00-01 Stats: 37 lines in 12 files changed: 0 ins; 25 del; 12 mod Patch: https://git.openjdk.org/jdk/pull/30443.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/30443/head:pull/30443 PR: https://git.openjdk.org/jdk/pull/30443
