Proposal: #ClassFileAccPublic

Mark Reinhold mark.reinhold at
Wed Jul 6 15:32:36 UTC 2016

Issue summary

  #ClassFileAccPublic --- The `ACC_PUBLIC` constant in a `requires_flags`
  should be encoded as `0x0001`, as it is elsewhere in the JVMS, rather
  than as `0x0020`, which has different meanings in other contexts.


Unlike the other `ACC_PUBLIC` constants, this constant does not express
an access mode but, rather, the addition of an implied transitive
readability edge from modules that depend upon this module to some other
module required by this module.  To avoid confusion at the class-file
level, rename this constant to `ACC_TRANSITIVE`.

(Whether the syntax of module declarations should use a keyword other
 than `public` for this purpose would be a separate issue.)


More information about the jpms-spec-experts mailing list