On Sat, 13 Aug 2022 19:49:31 GMT, Hannes Greule <[email protected]> wrote:
>> With this change, javac emits the MethodParameters attribute in cases where >> the JLS requires the information about synthetic and mandated parameters to >> be stored (see issue). >> Parameter names are *not* emitted unless the `-parameter` flag is set. >> >> The relevant changes are in `ClassWriter`, where we go through the params to >> see if we need the attribute if the `-parameter` flag is not set (if it is >> set, both names and flags will be emitted). >> For records, the mandated flag wasn't set at all, this is solved by the one >> line fix in `JavacParser`. >> >> The changes to `CreateSymbols` and `ClassReader` are needed as they weren't >> able to deal with missing names in the attribute. >> I also had to update some tests as they got a new constant pool entry. >> >> Only the mandated flag is covered by tests at the moment, as the occurrences >> are well-specified in the JLS. >> Please let me know if you want tests for specific appearances of synthetic >> parameters. > > Hannes Greule has updated the pull request incrementally with one additional > commit since the last revision: > > add access flag based test CSR needed I guess ------------- PR: https://git.openjdk.org/jdk/pull/9862
