Skip to content

Commit

Permalink
avoid FromAlias on non-static field
Browse files Browse the repository at this point in the history
  • Loading branch information
mur47x111 committed Nov 13, 2024
1 parent 5741af5 commit b38925a
Showing 1 changed file with 12 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -147,23 +147,25 @@ final class Target_jdk_internal_ref_PhantomCleanable_JDK21 {
*/
@Alias @RecomputeFieldValue(kind = RecomputeFieldValue.Kind.Custom, declClass = HolderObjectFieldTransformer.class) //
Target_jdk_internal_ref_PhantomCleanable prev;

@Alias @RecomputeFieldValue(kind = RecomputeFieldValue.Kind.Custom, declClass = HolderObjectFieldTransformer.class) //
Target_jdk_internal_ref_PhantomCleanable next;

@Alias @RecomputeFieldValue(kind = RecomputeFieldValue.Kind.Custom, declClass = HolderObjectFieldTransformer.class) //
Target_jdk_internal_ref_PhantomCleanable list;

@Alias
native boolean isListEmpty();

@AnnotateOriginal
@NeverInline("Ensure that every exception can be caught, including implicit exceptions.")
/* final */ native void clean();
}

@TargetClass(className = "jdk.internal.ref.PhantomCleanable", onlyWith = JDKLatest.class)
final class Target_jdk_internal_ref_PhantomCleanable {
@Alias @RecomputeFieldValue(kind = RecomputeFieldValue.Kind.Reset) //
Target_jdk_internal_ref_CleanerImpl_PhantomCleanableList list;

@Alias @RecomputeFieldValue(kind = RecomputeFieldValue.Kind.FromAlias) //
@Alias @RecomputeFieldValue(kind = RecomputeFieldValue.Kind.Custom, declClass = ResetToMinusOneTransformer.class) //
int index;

@AnnotateOriginal
Expand Down Expand Up @@ -191,3 +193,10 @@ public Object transform(Object receiver, Object originalValue) {
return receiver;
}
}

final class ResetToMinusOneTransformer implements FieldValueTransformer {
@Override
public Object transform(Object receiver, Object originalValue) {
return -1;
}
}

0 comments on commit b38925a

Please sign in to comment.