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

Deprecate AllowNonVirtualCalls option

    XMLWordPrintable

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P3
    • Resolution: Fixed
    • Affects Version/s: 10, 11
    • Fix Version/s: 11
    • Component/s: hotspot
    • Labels:
      None
    • Subcomponent:
    • Resolved In Build:
      b13

      Description

      The JVM ignores the ACC_SUPER flag when looking up the method to call for invokespecial, and looks up the method in the closest super class of the caller class. There's a good description of ACC_SUPER in stackoverflow:

      https://stackoverflow.com/questions/8949933/what-is-the-purpose-of-the-acc-super-access-flag-on-java-class-files

      The AllowNonVirtualCalls option was added for backward compatibility in case of code that relied on the old 1.0 invokenonvirtual semantics instead of the current correct invokespecial sematics. This option should be removed. We shouldn't allow old lookup semantics for invokevirtual.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              coleenp Coleen Phillimore
              Reporter:
              coleenp Coleen Phillimore
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: