[code-reflection] RFR: Invocation to vararg methods [v4]

Paul Sandoz psandoz at openjdk.org
Tue Sep 17 23:00:59 UTC 2024


> Re-consolidate to one invocation operation that explicitly declares its invoke kind and whether it is an invocation to a varargs method.
> 
> Resolution of a method reference accepts an invoke kind. The ambiguity when resolving a method reference without an invoke kind has been cleared up, in these cases we can only resolve to a direct method, one in which the referencing class is the class that declares the method.
> 
> I managed to avoid numerous changes to update the text models in language tests. Creating an invoke operation from external form is permissive in the attributes that are present. It makes the same assumptions as the invoke factory method in determining the invocation kind from the argument count and invoke descriptor count, and assumes the method is not a varargs method (the common case).

Paul Sandoz has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains six additional commits since the last revision:

 - Merge remote-tracking branch 'upstream/code-reflection' into varargs
 - Merge remote-tracking branch 'upstream/code-reflection' into varargs
 - Comments.
 - Undo edits.
 - Avoid generating attributes
 - Invocation to vararg methods.

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

Changes:
  - all: https://git.openjdk.org/babylon/pull/225/files
  - new: https://git.openjdk.org/babylon/pull/225/files/7ff659b4..39c86466

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=babylon&pr=225&range=03
 - incr: https://webrevs.openjdk.org/?repo=babylon&pr=225&range=02-03

  Stats: 655 lines in 20 files changed: 222 ins; 386 del; 47 mod
  Patch: https://git.openjdk.org/babylon/pull/225.diff
  Fetch: git fetch https://git.openjdk.org/babylon.git pull/225/head:pull/225

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


More information about the babylon-dev mailing list