Christoph Thiede uploaded a new version of Compiler to project The Trunk: http://source.squeak.org/trunk/Compiler-ct.474.mcz
==================== Summary ====================
Name: Compiler-ct.474 Author: ct Time: 30 April 2022, 7:53:05.514971 pm UUID: 7061d536-1604-0243-a378-f51ae046ff87 Ancestors: Compiler-ul.473
Fixes a parser bug during removal of empty temp declarations. Complements Tests-ct.485.
=============== Diff against Compiler-ul.473 ===============
Item was changed: ----- Method: Parser>>removeEmptyTempDeclarationsFrom: (in category 'error correction') ----- removeEmptyTempDeclarationsFrom: methodNode
| sourceCode madeChanges tempsMarkHolder | sourceCode := cue requestor text asString. tempsMarkHolder := self collectTemporaryDeclarationsFrom: methodNode. madeChanges := false. tempsMarkHolder do: [ :currentBlock | | tempsMarkChar0 tempsMarkChar1 tempsMarkChar2 end start | tempsMarkChar0 := (sourceCode at: currentBlock tempsMark). tempsMarkChar1 := (sourceCode at: currentBlock tempsMark - 1). + tempsMarkChar2 := (sourceCode at: currentBlock tempsMark - 2 ifAbsent: []). - tempsMarkChar2 := (sourceCode at: currentBlock tempsMark - 2). (tempsMarkChar0 == $| and: [ tempsMarkChar1 == $| ]) ifTrue: [ end := currentBlock tempsMark. start := end - 1]. (tempsMarkChar0 == $| and: [ tempsMarkChar1 == $ and: [ tempsMarkChar2 == $| ] ]) ifTrue: [ end := currentBlock tempsMark. start := end - 2]. (start notNil and: [ end notNil ]) ifTrue: [ | lineStart lineEnd | lineStart := 1 + (sourceCode lastIndexOf: Character cr startingAt: start - 1). lineEnd := sourceCode indexOf: Character cr startingAt: end + 1 ifAbsent: [ sourceCode size ]. ((sourceCode indexOfAnyOf: CharacterSet nonSeparators startingAt: lineStart) >= start and: [ (sourceCode indexOfAnyOf: CharacterSet nonSeparators startingAt: end + 1) > lineEnd ]) ifTrue: [ start := lineStart. end := lineEnd ]. cue requestor correctFrom: start to: end with: ''. madeChanges := true. currentBlock tempsMark: nil ] ]. madeChanges ifTrue: [ReparseAfterSourceEditing signal]!
packages@lists.squeakfoundation.org