[code-reflection] RFR: Improved error message if Reflect annotation is missing on transitive methods from kernel method [v8]

Nadeesh TV ntv at openjdk.org
Thu Jan 15 21:28:15 UTC 2026


> **Description** 
> Currently, if we miss the @**Reflect** annotation on methods called from kernel functions, no method is generated for them in the corresponding backend. This causes an error like:
> 
> `> error: implicit declaration of function 'squareitWithoutReflectAnnotation' is invalid...
> `
> **Solution** 
> - Throw error if Reflect annotation is missing on all methods called from the kernel function  that are defined in the same class as the kernel function. 
> 
> **Test** 
>   -  A new test is added at **hat.test.TestMissingReflectAnnotation#testTransitiveMethodFromKernelWithoutReflectAnnotation**

Nadeesh TV has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 38 commits:

 - Merge branch 'code-reflection' of https://git.openjdk.org/babylon into verify_reflect_annotation_part2_retry
 - Restore the pattern matching part and removed unrelated changes
 - Merge code-reflection
 - Merge code-reflection
 - rebase
 - Remove files which was accidentally added back during rebase
 - Removed previous transformer patter experiments
 - More FP16Phase cleanup. Leveraging Invoke helper
 - rebase
 - se
 - ... and 28 more: https://git.openjdk.org/babylon/compare/728437fb...770b5242

-------------

Changes: https://git.openjdk.org/babylon/pull/798/files
  Webrev: https://webrevs.openjdk.org/?repo=babylon&pr=798&range=07
  Stats: 86 lines in 3 files changed: 47 ins; 3 del; 36 mod
  Patch: https://git.openjdk.org/babylon/pull/798.diff
  Fetch: git fetch https://git.openjdk.org/babylon.git pull/798/head:pull/798

PR: https://git.openjdk.org/babylon/pull/798


More information about the babylon-dev mailing list