Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8340791

Javac produces code that triggers verifier error

XMLWordPrintable

    • generic
    • generic

      ADDITIONAL SYSTEM INFORMATION :
      openjdk version "17.0.11" 2024-04-16
      OpenJDK Runtime Environment Temurin-17.0.11+9 (build 17.0.11+9)
      OpenJDK 64-Bit Server VM Temurin-17.0.11+9 (build 17.0.11+9, mixed mode, sharing)

      A DESCRIPTION OF THE PROBLEM :
      I did some changes to Hibernate ORM todaywhich compile fine with Javac but trigger a verifier error at runtime.

      The error is:

      java.lang.VerifyError: Bad access to protected data in invokevirtual
      Exception Details:
        Location:
          org/hibernate/query/sqm/internal/SqmSelectionQueryImpl.<init>(Lorg/hibernate/query/sqm/internal/AbstractSqmSelectionQuery;Lorg/hibernate/query/KeyedPage;)V @135: invokevirtual
        Reason:
          Type 'org/hibernate/query/sqm/internal/AbstractSqmSelectionQuery' (current frame, stack[1]) is not assignable to 'org/hibernate/query/sqm/internal/SqmSelectionQueryImpl'
        Current Frame:
          bci: @135
          flags: { }
          locals: { 'org/hibernate/query/sqm/internal/SqmSelectionQueryImpl', 'org/hibernate/query/sqm/internal/AbstractSqmSelectionQuery', 'org/hibernate/query/KeyedPage', 'org/hibernate/query/Page', 'java/util/List', 'java/util/List', 'java/util/List' }
          stack: { 'org/hibernate/query/sqm/internal/SqmSelectionQueryImpl', 'org/hibernate/query/sqm/internal/AbstractSqmSelectionQuery' }
        Bytecode:
          0000000: 2a2b b700 d32c b600 d64e 2cb6 00dc 3a04
          0000010: 2cb6 00e0 3a05 2cb6 00e3 b200 e7a6 000b
          0000020: 1905 b800 eda7 0005 1905 3a06 2a19 0619
          0000030: 042b b600 f3b2 00f4 b800 fab9 00fe 0200
          0000040: c000 1f2b b600 f3b9 0103 0100 b801 07b5
          0000050: 0021 2a12 79b5 000d 2a2a b400 21b8 008d
          0000060: b500 312a 2ab4 0031 b600 9399 0014 bb00
          0000070: 9659 2ab4 0031 b600 98b7 009c a700 06b2
          0000080: 009f b500 292a 2bb6 010d b500 412a b400
          0000090: 31b6 00a3 b900 a701 00b9 00ad 0100 3a07
          00000a0: 1907 b900 b301 0099 0023 1907 b900 b801
          00000b0: 00c0 00bc 3a08 1908 c100 be99 000c 2a19
          00000c0: 08c0 00be b600 c0a7 ffd9 2a13 0111 b500
          00000d0: 452a 2ab4 0021 2ab4 0045 b800 49b5 004d
          00000e0: 2a01 b500 542a 2db6 0113 0460 b601 1957
          00000f0: 1904 c700 0c2a 2db6 011d b601 2057 b1
        Stackmap Table:
          full_frame(@40,{Object[#14],Object[#8],Object[#215],Object[#276],Object[#307],Object[#307]},{})
          same_locals_1_stack_item_frame(@42,Object[#307])
          full_frame(@127,{Object[#14],Object[#8],Object[#215],Object[#276],Object[#307],Object[#307],Object[#307]},{Object[#14]})
          full_frame(@130,{Object[#14],Object[#8],Object[#215],Object[#276],Object[#307],Object[#307],Object[#307]},{Object[#14],Object[#60]})
          append_frame(@160,Object[#180])
          same_frame(@199)
          chop_frame(@202,1)
          same_frame(@254)


      FREQUENCY : always

        1. AbstractRootBase.java
          0.1 kB
        2. AbstractBase.java
          0.1 kB
        3. BaseInterface.java
          0.1 kB
        4. Impl.java
          0.3 kB

            jlahoda Jan Lahoda
            pnarayanaswa Praveen Narayanaswamy
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: