Skip to content

Include private superclass fields in kernel struct#189

Open
KingParmenides wants to merge 1 commit into
Syncleus:masterfrom
KingParmenides:fix-private-superclass-fields
Open

Include private superclass fields in kernel struct#189
KingParmenides wants to merge 1 commit into
Syncleus:masterfrom
KingParmenides:fix-private-superclass-fields

Conversation

@KingParmenides
Copy link
Copy Markdown

@KingParmenides KingParmenides commented May 11, 2026

Fixes #15.

This updates kernel field discovery so non-static primitive, array, and AtomicInteger fields declared on a superclass are retained even when they are private. Those fields can be referenced from superclass methods that are part of the generated kernel call graph, so they need to be included in This_s.

A regression test covers private superclass fields being present both in the entrypoint referenced fields and in the emitted This_s struct.

Validation:

  • git diff --check
  • mvn -q -Dmaven.repo.local=/private/tmp/aparapi-m2 -DsecondaryCacheDir=/private/tmp/aparapi-zinc-jdk11 -DargLine="-XX:+IgnoreUnrecognizedVMOptions" -Dtest=PrivateSuperclassFieldTest,OverriddenKernelFieldTest,CallSuperTest test

BTC payout address: 39Q34P8A7g375yqEr8buvNJkUbRgKfbKQZ

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bounty $30] Private superclass fields missing from struct This_s

1 participant