[squeak-dev] Squeak 4.6: Compiler-dtl.305.mcz

christoph.thiede at student.hpi.uni-potsdam.de christoph.thiede at student.hpi.uni-potsdam.de
Thu Jul 22 00:25:53 UTC 2021


What, these old projects can still be updated? One needs to know that. :D

Fixed for Squeak Inbox Talk via https://github.com/hpi-swa-lab/squeak-inbox-talk/pull/52.

Best,
Christoph

---
Sent from Squeak Inbox Talk

On 2021-07-21T23:38:11+00:00, commits at source.squeak.org wrote:

> David T. Lewis uploaded a new version of Compiler to project Squeak 4.6:
> http://source.squeak.org/squeak46/Compiler-dtl.305.mcz
> 
> ==================== Summary ====================
> 
> Name: Compiler-dtl.305
> Author: dtl
> Time: 21 July 2021, 7:38:08.593 pm
> UUID: 58432771-0204-44ce-8992-339c5e9aa325
> Ancestors: Compiler-eem.304
> 
> Backport Compiler-eem.394 to squeak46. Required for various VMMaker and VM plugins that use _:_:_: syntax convention for C function code generation.
> 
> Name: Compiler-eem.394
> Author: eem
> Time: 18 September 2018, 11:01:49.239937 am
> UUID: 446b4a31-2799-41fa-82d4-e503a94fb360
> Ancestors: Compiler-bf.393
> 
> Fix a bug in Scanner>>xUnderscore that prevented parsing e.g.
> 
> method: p _: q _: r
>     ^'cool'
> 
> =============== Diff against Compiler-eem.304 ===============
> 
> Item was changed:
> ----- Method: Scanner>>xUnderscore (in category 'multi-character scans') -----
> xUnderscore
> +     self allowUnderscoreAssignments ifTrue:
> +         "Figure out if x _foo (no space between _ and foo) should be a selector or assignment."
> +         [(self allowUnderscoreSelectors
> +          and: [#(xLetter xDigit xUnderscore xColon) includes: (self typeTableAt: aheadChar)])
> +             ifFalse:
> +                 [self step.
> +                  tokenType := #leftArrow.
> +                  ^token := #'_']].
> +     self allowUnderscoreSelectors ifTrue:
> +         [^self xLetter].
> -     self allowUnderscoreAssignments ifTrue:[ | type |
> -         "Figure out if x _foo (no space between _ and foo) 
> -         should be a selector or assignment"
> -         (((type := self typeTableAt: aheadChar) == #xLetter
> -             or:[type == #xDigit or:[type == #xUnderscore]]) 
> -             and:[self allowUnderscoreSelectors]) ifFalse:[
> -                 self step.
> -                 tokenType := #leftArrow.
> -                 ^token := #'_'
> -         ].
> -     ].
> -     self allowUnderscoreSelectors ifTrue:[^self xLetter].
>     ^self xIllegal!
> 
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20210722/e539cf02/attachment.html>


More information about the Squeak-dev mailing list