<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hi Eliot,<br>
    </p>
    <p>Probably I am doing something incredibly stupid.</p>
    <p>I just re-downloaded today's 6.1alpha
      (Squeak6.1alpha-22266-64bit-202206021410-Linux-x64.tar.gz,
      28902799 bytes long, md5sum = 6c1...63a), and tried first with the
      VM that comes inside that tarball (Smalltalk vmVersion -> 3195)
      and then with today's VM build from
<a class="moz-txt-link-freetext" href="https://github.com/OpenSmalltalk/opensmalltalk-vm/releases/download/latest-build/squeak.cog.spur_linux64x64.tar.gz">https://github.com/OpenSmalltalk/opensmalltalk-vm/releases/download/latest-build/squeak.cog.spur_linux64x64.tar.gz</a>
      (3236277 bytes, md5 = cbf...6d8, Smalltalk vmVersion -> 3256).</p>
    <p>With both 3195 and 3256, "run test" on testIndirect gives me a
      "Halt:" on an Array of 3 elements { false. false. false }.  I
      can't get prim 100 to fail.<br>
    </p>
    <p>Boris<br>
    </p>
    <div class="moz-cite-prefix">On 10/27/22 15:38, Eliot Miranda wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAC20JE3aqRZZxscOpMnD1oawfLjkavvZXgKgy61c2cEWAd1sfw@mail.gmail.com">
      <pre class="moz-quote-pre" wrap=""> </pre>
      <br>
      <fieldset class="moz-mime-attachment-header"></fieldset>
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div class="gmail_default" style="font-size:small">Hi Boris,<br>
        </div>
        <div class="gmail_default" style="font-size:small"><br>
        </div>
        <div class="gmail_default" style="font-size:small">   in trunk
          Squeak 6.1 alpha, VM Open Smalltalk Cog[Spur] VM
          [CoInterpreterPrimitives VMMaker.oscog-eem.3256]
          5.20221022.0042, I get the debugger both ways. Both routes,
          testDirect & testIndirect result in a notifier failing in
          primitives 83, 84 & 100.  The failure code for
          #100, Object>>#perform:withArguments:inSuperclass:,
          infers that the number of arguments is incorrect.</div>
        <div class="gmail_default" style="font-size:small"><br>
        </div>
        <div class="gmail_default" style="font-size:small">When I modify
          the source of these methods to include the primitive error
          code then in each failure the VM correctly supplies the #'bad
          number of arguments' error code.</div>
        <div class="gmail_default" style="font-size:small"><br>
        </div>
        <div class="gmail_default" style="font-size:small">So I see a
          correct system.  I'm not seeing what you're seeing.</div>
      </div>
      <br>
      <div class="gmail_quote">
        <div dir="ltr" class="gmail_attr">On Fri, Oct 21, 2022 at 6:54
          AM Boris Shingarov <<a href="mailto:boris@shingarov.com"
            moz-do-not-send="true" class="moz-txt-link-freetext">boris@shingarov.com</a>>
          wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0px 0px 0px
0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"> Dear
          fellow VM hackers:<br>
          There is something about the #perform: prims I do not
          understand.<br>
          <br>
          If I send #perform: not giving it enough arguments, I would
          expect the <br>
          primitive to fail through to the Smalltalk code in <br>
          Object>>perform:withArguments:inSuperclass:.<br>
          <br>
          But, sometimes it's indeed what happens and sometimes it's not
          what <br>
          happens.  In the attached test , if you run testDirect (in
          this <br>
          morning's Squeak6) you will end up in the debugger (expected),
          but if <br>
          you wrap in an extra send such as testIndirect, the prim will
          pass nil <br>
          for the missing argument (to me this is unexpected).  I also
          tested in <br>
          last night's build of Cuis, and in Pharo8 (in the latter, the
          behavior <br>
          is even weirder: if you replace the fail code to answer
          #somethingElse, <br>
          you get #(somethingElse false false) instead of the #(false
          false false) <br>
          in Squeak).<br>
          <br>
          Anyone has any thoughts on this?<br>
        </blockquote>
      </div>
      <br clear="all">
      <div><br>
      </div>
      -- <br>
      <div dir="ltr" class="gmail_signature">
        <div dir="ltr">
          <div><span style="font-size:small;border-collapse:separate">
              <div>_,,,^..^,,,_<br>
              </div>
              <div>best, Eliot</div>
            </span></div>
        </div>
      </div>
    </blockquote>
  </body>
</html>