RFR: 8320575: generic type information lost on mandated parameters of record's compact constructors [v13]

Vicente Romero vromero at openjdk.org
Wed Apr 24 19:53:41 UTC 2024


> Reflection is not retrieving generic type information for mandated parameters. This is a known issue which has been explicitly stated in the API of some reflection methods. Fix for [JDK-8292275](https://bugs.openjdk.org/browse/JDK-8292275) made the parameters of compact constructors of record classes `mandated` as specified in the spec. But this implied that users that previous to this change could retrieve the generic type of parameters of compact constructors now they can't anymore. The proposed fix is to try to retrieve generic type information for mandated parameters if available plus changing the spec of the related reflection methods.
> 
> TIA

Vicente Romero has updated the pull request incrementally with one additional commit since the last revision:

  Update test/jdk/java/lang/reflect/records/RecordReflectionTest.java
  
  Co-authored-by: Andrey Turbanov <turbanoff at gmail.com>

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/17070/files
  - new: https://git.openjdk.org/jdk/pull/17070/files/589f3ff5..4c3d4e1e

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=17070&range=12
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=17070&range=11-12

  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/17070.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/17070/head:pull/17070

PR: https://git.openjdk.org/jdk/pull/17070


More information about the core-libs-dev mailing list