What, these old projects can still be updated? One needs to know that. :D<br>
<br>
Fixed for Squeak Inbox Talk via https://github.com/hpi-swa-lab/squeak-inbox-talk/pull/52.<br>
<br>
Best,<br>
Christoph<br>
<br>
<font color="#808080">---<br>
</font><i><font color="#808080">Sent from </font></i><i><u><a href="https://github.com/hpi-swa-lab/squeak-inbox-talk"><font color="#808080">Squeak Inbox Talk</font></a></u></i><br>
<br>
On 2021-07-21T23:38:11+00:00, commits@source.squeak.org wrote:<br>
<br>
> David T. Lewis uploaded a new version of Compiler to project Squeak 4.6:<br>
> http://source.squeak.org/squeak46/Compiler-dtl.305.mcz<br>
> <br>
> ==================== Summary ====================<br>
> <br>
> Name: Compiler-dtl.305<br>
> Author: dtl<br>
> Time: 21 July 2021, 7:38:08.593 pm<br>
> UUID: 58432771-0204-44ce-8992-339c5e9aa325<br>
> Ancestors: Compiler-eem.304<br>
> <br>
> Backport Compiler-eem.394 to squeak46. Required for various VMMaker and VM plugins that use _:_:_: syntax convention for C function code generation.<br>
> <br>
> Name: Compiler-eem.394<br>
> Author: eem<br>
> Time: 18 September 2018, 11:01:49.239937 am<br>
> UUID: 446b4a31-2799-41fa-82d4-e503a94fb360<br>
> Ancestors: Compiler-bf.393<br>
> <br>
> Fix a bug in Scanner>>xUnderscore that prevented parsing e.g.<br>
> <br>
> method: p _: q _: r<br>
>     ^'cool'<br>
> <br>
> =============== Diff against Compiler-eem.304 ===============<br>
> <br>
> Item was changed:<br>
> ----- Method: Scanner>>xUnderscore (in category 'multi-character scans') -----<br>
> xUnderscore<br>
> +     self allowUnderscoreAssignments ifTrue:<br>
> +         "Figure out if x _foo (no space between _ and foo) should be a selector or assignment."<br>
> +         [(self allowUnderscoreSelectors<br>
> +          and: [#(xLetter xDigit xUnderscore xColon) includes: (self typeTableAt: aheadChar)])<br>
> +             ifFalse:<br>
> +                 [self step.<br>
> +                  tokenType := #leftArrow.<br>
> +                  ^token := #'_']].<br>
> +     self allowUnderscoreSelectors ifTrue:<br>
> +         [^self xLetter].<br>
> -     self allowUnderscoreAssignments ifTrue:[ | type |<br>
> -         "Figure out if x _foo (no space between _ and foo) <br>
> -         should be a selector or assignment"<br>
> -         (((type := self typeTableAt: aheadChar) == #xLetter<br>
> -             or:[type == #xDigit or:[type == #xUnderscore]]) <br>
> -             and:[self allowUnderscoreSelectors]) ifFalse:[<br>
> -                 self step.<br>
> -                 tokenType := #leftArrow.<br>
> -                 ^token := #'_'<br>
> -         ].<br>
> -     ].<br>
> -     self allowUnderscoreSelectors ifTrue:[^self xLetter].<br>
>     ^self xIllegal!<br>
> <br>