RFR: 8342697: Parameter arrays that are capped during annotation processing report incorrect length
Nizar Benalla
nbenalla at openjdk.org
Wed Oct 23 13:41:43 UTC 2024
Can I please get a review for this change.
Passes tier1, currently running tier 2-3.
The regression test creates temporary files in `tmpdir` to check that the warning is emitted correctly.
I've also added the new warning to `example.not-yet.txt` as the example would require a very large file.
Here is the result of running `javap -c -p -v` on `ClassAnnotationWithLength_65536.class` and `ClassAnnotationWithLength_65537.class` respectively. Results are the same before/after the change.
static int x;
descriptor: I
flags: (0x0008) ACC_STATIC
RuntimeVisibleAnnotations:
0: #14(#15=s#16,#17=I#18,#19=[J#20])
CustomAnno(
value="custom"
count=42
arr=[-1l]
)
static int x;
descriptor: I
flags: (0x0008) ACC_STATIC
RuntimeVisibleAnnotations:
0: #14(#15=s#16,#17=I#18,#19=[J#20,J#20])
CustomAnno(
value="custom"
count=42
arr=[-1l,-1l]
)
TIA
-------------
Commit messages:
- try to remove trailing whitespace
- simplify BufferedWriter creation
- JDK-8339190
Changes: https://git.openjdk.org/jdk/pull/21663/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=21663&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8342697
Stats: 144 lines in 4 files changed: 143 ins; 0 del; 1 mod
Patch: https://git.openjdk.org/jdk/pull/21663.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/21663/head:pull/21663
PR: https://git.openjdk.org/jdk/pull/21663
More information about the compiler-dev
mailing list