Please review this fix to correctly read a long value in the runtime constant 
pool. Details are mentioned in the issue [0].
Before this fix the long value generated by SA's dumpclass for 
java.lang.String.serialVersionUID was:

  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: long 2050732866l

After this fix value of java.lang.String.serialVersionUID is:

  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: long -6849794470754667710l

Correct value as obtained from original java.lang.String is 
-6849794470754667710l.


[0] https://bugs.openjdk.org/browse/JDK-8311971

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

Commit messages:
 - 8311971: SA's ConstantPool.java uses incorrect computation to read long 
value in the constant pool

Changes: https://git.openjdk.org/jdk/pull/14855/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=14855&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8311971
  Stats: 5 lines in 1 file changed: 0 ins; 4 del; 1 mod
  Patch: https://git.openjdk.org/jdk/pull/14855.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/14855/head:pull/14855

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

Reply via email to