<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <br>
    <br>
    <div class="moz-cite-prefix">On 07/03/2025 23:50, Ryan Ernst wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:37F06AA7-E883-4BCF-8E0E-6B2CF1A81FBD@iernst.net">
      
      > <span style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">If
        the class is loaded and then linked, and is not on the bootstrap
        class loader, then it should be verified.</span>
      <div><font color="#000000"><span style="caret-color: rgb(0, 0, 0);"><br>
          </span></font></div>
      <div><font color="#000000">I agree, but that’s not what we
          observed. We only see the VerifyError if retransformClasses is
          called. If instead the class is loaded after the transformer
          has been registered, no VerifyError occurs, even though the
          transformer produced technically broken bytecode (I say
          â€œtechnically” because although the parameter type was wrong,
          we never used the parameter in this method, so it didn’t
          actually cause any problems at runtime, it was just a bad
          reference on the stack that was ignored).</font><br>
      </div>
    </blockquote>
    <br>
    I think the question you are asking is whether there is verification
    of classes modified at class load time with a ClassFileTransformer
    (ClassFileLoadHook in JVMTI speak) when those classes are in modules
    mapped to the boot class loader.<br>
    <br>
    -Alan<br>
  </body>
</html>