Thu, 27 Oct 2022 14:53:59 +0100 Allow single underscore as method / block argument and temporaries jv tip
Jan Vrany <jan.vrany@labware.com> [Thu, 27 Oct 2022 14:53:59 +0100] rev 4735
Allow single underscore as method / block argument and temporaries This commit is a follow up for 38b221e.
Tue, 30 Nov 2021 18:11:10 +0000 Merge jv
Jan Vrany <jan.vrany@labware.com> [Tue, 30 Nov 2021 18:11:10 +0000] rev 4734
Merge
Mon, 15 Nov 2021 20:30:42 +0000 `AbstractSyntaxHighlighter`: use set color preferences (theme) when marking error jv
Jan Vrany <jan.vrany@labware.com> [Mon, 15 Nov 2021 20:30:42 +0000] rev 4733
`AbstractSyntaxHighlighter`: use set color preferences (theme) when marking error
Wed, 06 Oct 2021 12:11:13 +0100 Allow single underscore to be a valid variable name jv
Jan Vrany <jan.vrany@labware.com> [Wed, 06 Oct 2021 12:11:13 +0100] rev 4732
Allow single underscore to be a valid variable name ...is `allowUndestoreInIdentifier` is on. Pharo allows it and some code uses this (for example, MachineArithmetic [1]). [1]: https://github.com/shingarov/MachineArithmetic/commit/65c57667e281fba986f8d40777151370055b77a8
Thu, 23 Sep 2021 14:56:59 +0100 Improve support for implicit self-sends (in Self's sense) jv
Jan Vrany <jan.vrany@labware.com> [Thu, 23 Sep 2021 14:56:59 +0100] rev 4731
Improve support for implicit self-sends (in Self's sense)
Wed, 24 Nov 2021 10:56:33 +0100 Adding #lineNumber accessor for compatibility reasons. jv
Patrik Svestka <patrik.svestka@gmail.com> [Wed, 24 Nov 2021 10:56:33 +0100] rev 4730
Adding #lineNumber accessor for compatibility reasons.
Wed, 24 Nov 2021 10:54:24 +0100 Fixing the variable(Node) to report line number. jv
Patrik Svestka <patrik.svestka@gmail.com> [Wed, 24 Nov 2021 10:54:24 +0100] rev 4729
Fixing the variable(Node) to report line number.
Mon, 15 Nov 2021 10:55:13 +0100 Adding missing endPosition for MessageNode. jv
Patrik Svestka <patrik.svestka@gmail.com> [Mon, 15 Nov 2021 10:55:13 +0100] rev 4728
Adding missing endPosition for MessageNode. This bug will show itself when a cascaded message is send.
Tue, 29 Jun 2021 20:39:06 +0100 Merge jv
Jan Vrany <jan.vrany@labware.com> [Tue, 29 Jun 2021 20:39:06 +0100] rev 4727
Merge
Tue, 23 Mar 2021 13:41:07 +0000 Merge jv
Jan Vrany <jan.vrany@labware.com> [Tue, 23 Mar 2021 13:41:07 +0000] rev 4726
Merge
Thu, 18 Mar 2021 23:38:53 +0000 Fix bug in (some) symbol literal parsing jv
Jan Vrany <jan.vrany@labware.com> [Thu, 18 Mar 2021 23:38:53 +0000] rev 4725
Fix bug in (some) symbol literal parsing Smalltalk/X supports Scheme-like typed array literals like #d(1 2 3) - as array of doubles. However, due to a bug in `Scanner`, symbols named by these prefixes followed by collon were not scanned correctly, i.e, `#d:` was actually scanned as two tokens, `#d` and `:`. This commit fixes the issue by explicitly checking whether collon is immediately following in case parsing fall backs from typed-array parsing to symbol parsing. This bug has been pulled in by merging with eXept's code.
Tue, 09 Mar 2021 12:23:43 +0000 Merge jv
Jan Vrany <jan.vrany@labware.com> [Tue, 09 Mar 2021 12:23:43 +0000] rev 4724
Merge
Tue, 25 Aug 2020 12:20:06 +0100 Merge branch 'default' jv
Jan Vrany <jan.vrany@labware.com> [Tue, 25 Aug 2020 12:20:06 +0100] rev 4723
Merge branch 'default'
Mon, 17 Aug 2020 19:27:20 +0200 #BUGFIX by exept default
Claus Gittinger <cg@exept.de> [Mon, 17 Aug 2020 19:27:20 +0200] rev 4722
#BUGFIX by exept class: Parser changed: #variableOrError: first look for Workspace vars, THEN for globals.
Sun, 16 Aug 2020 13:54:42 +0200 #OTHER by exept
Claus Gittinger <cg@exept.de> [Sun, 16 Aug 2020 13:54:42 +0200] rev 4721
#OTHER by exept use CharacterWriteStream new
Sun, 16 Aug 2020 13:54:35 +0200 #OTHER by exept
Claus Gittinger <cg@exept.de> [Sun, 16 Aug 2020 13:54:35 +0200] rev 4720
#OTHER by exept use CharacterWriteStream new
Sat, 15 Aug 2020 13:00:50 +0200 #OTHER by exept
Claus Gittinger <cg@exept.de> [Sat, 15 Aug 2020 13:00:50 +0200] rev 4719
#OTHER by exept comment
Sat, 15 Aug 2020 12:59:15 +0200 #BUGFIX by exept
Claus Gittinger <cg@exept.de> [Sat, 15 Aug 2020 12:59:15 +0200] rev 4718
#BUGFIX by exept class: ParseNode added: #isSynthetic
Wed, 12 Aug 2020 08:32:07 +0200 #DOCUMENTATION by exept
Claus Gittinger <cg@exept.de> [Wed, 12 Aug 2020 08:32:07 +0200] rev 4717
#DOCUMENTATION by exept class: MessageNode comment/format in: #numArgs
Mon, 10 Aug 2020 17:36:00 +0200 #UI_ENHANCEMENT by exept
Claus Gittinger <cg@exept.de> [Mon, 10 Aug 2020 17:36:00 +0200] rev 4716
#UI_ENHANCEMENT by exept class: Scanner changed: #invalidCharacter:
Mon, 10 Aug 2020 17:07:52 +0200 #FEATURE by exept
Claus Gittinger <cg@exept.de> [Mon, 10 Aug 2020 17:07:52 +0200] rev 4715
#FEATURE by exept class: Scanner changed: #invalidCharacter:
Sun, 09 Aug 2020 18:06:24 +0200 #TUNING by exept
Claus Gittinger <cg@exept.de> [Sun, 09 Aug 2020 18:06:24 +0200] rev 4714
#TUNING by exept class: Parser changed: #stringWithEmbeddedExpressions
Sat, 08 Aug 2020 09:08:48 +0200 #DOCUMENTATION by exept
Claus Gittinger <cg@exept.de> [Sat, 08 Aug 2020 09:08:48 +0200] rev 4713
#DOCUMENTATION by exept class: LazyMethod comment/format in: #isLazyMethod
Fri, 07 Aug 2020 18:12:59 +0200 #OTHER by exept
Claus Gittinger <cg@exept.de> [Fri, 07 Aug 2020 18:12:59 +0200] rev 4712
#OTHER by exept withDoubleQuotes
Fri, 07 Aug 2020 18:06:19 +0200 #BUGFIX by exept
Claus Gittinger <cg@exept.de> [Fri, 07 Aug 2020 18:06:19 +0200] rev 4711
#BUGFIX by exept class: Parser changed: #checkForEndOfInput #primary #stringWithEmbeddedExpressions #warnUnused:
Fri, 07 Aug 2020 18:06:09 +0200 #UI_ENHANCEMENT by exept
Claus Gittinger <cg@exept.de> [Fri, 07 Aug 2020 18:06:09 +0200] rev 4710
#UI_ENHANCEMENT by exept class: Explainer class changed: #explainNode:in:forClass:short:interval:
Thu, 06 Aug 2020 08:37:56 +0200 #UI_ENHANCEMENT by exept
Claus Gittinger <cg@exept.de> [Thu, 06 Aug 2020 08:37:56 +0200] rev 4709
#UI_ENHANCEMENT by exept class: Explainer class comment/format in: #documentation
Thu, 06 Aug 2020 08:37:18 +0200 #UI_ENHANCEMENT by exept
Claus Gittinger <cg@exept.de> [Thu, 06 Aug 2020 08:37:18 +0200] rev 4708
#UI_ENHANCEMENT by exept class: Explainer class changed: #explainLiteralNode:in:forClass:short:interval:
Thu, 06 Aug 2020 08:27:08 +0200 #FEATURE by exept
Claus Gittinger <cg@exept.de> [Thu, 06 Aug 2020 08:27:08 +0200] rev 4707
#FEATURE by exept class: Explainer class changed: #explainLiteralNode:in:forClass:short:interval:
Thu, 06 Aug 2020 08:26:55 +0200 #FEATURE by exept
Claus Gittinger <cg@exept.de> [Thu, 06 Aug 2020 08:26:55 +0200] rev 4706
#FEATURE by exept class: ConstantNode added: #isLiteralEString #isLiteralIString #isLiteralRString #isSTXSpecialLiteralString: changed: #isLiteralCString
Wed, 05 Aug 2020 15:42:29 +0200 #FEATURE by exept
Claus Gittinger <cg@exept.de> [Wed, 05 Aug 2020 15:42:29 +0200] rev 4705
#FEATURE by exept class: Scanner changed: #xnextString:escapeStyle:
Wed, 05 Aug 2020 15:42:21 +0200 #FEATURE by exept
Claus Gittinger <cg@exept.de> [Wed, 05 Aug 2020 15:42:21 +0200] rev 4704
#FEATURE by exept class: Parser comment/format in: #degeneratedKeywordExpressionForSelector changed: #primary #stringWithEmbeddedExpressions
Wed, 05 Aug 2020 13:18:40 +0200 #DOCUMENTATION by exept
Claus Gittinger <cg@exept.de> [Wed, 05 Aug 2020 13:18:40 +0200] rev 4703
#DOCUMENTATION by exept class: MessageNode class comment/format in: #receiver:selector:arg1:arg2:
Wed, 05 Aug 2020 13:18:24 +0200 #FEATURE by exept
Claus Gittinger <cg@exept.de> [Wed, 05 Aug 2020 13:18:24 +0200] rev 4702
#FEATURE by exept class: Scanner i-strings comment/format in: #nextString:escapeStyle: changed: #nextIdentifier #xnextString:escapeStyle: class: Scanner class comment/format in: #documentation
Wed, 05 Aug 2020 13:18:07 +0200 #FEATURE by exept
Claus Gittinger <cg@exept.de> [Wed, 05 Aug 2020 13:18:07 +0200] rev 4701
#FEATURE by exept class: Parser i-strings changed: #primary #stringWithEmbeddedExpressions
Wed, 05 Aug 2020 12:31:44 +0200 #FEATURE by exept
Claus Gittinger <cg@exept.de> [Wed, 05 Aug 2020 12:31:44 +0200] rev 4700
#FEATURE by exept class: ParserFlags changed: #initialize class: ParserFlags class changed: #initialize
Wed, 05 Aug 2020 12:23:52 +0200 #FEATURE by exept
Claus Gittinger <cg@exept.de> [Wed, 05 Aug 2020 12:23:52 +0200] rev 4699
#FEATURE by exept class: ParserFlags added: #allowIStrings
Wed, 05 Aug 2020 12:22:20 +0200 #FEATURE by exept
Claus Gittinger <cg@exept.de> [Wed, 05 Aug 2020 12:22:20 +0200] rev 4698
#FEATURE by exept class: ParserFlags class definition added: #allowIStrings: class: ParserFlags class added: #allowIStrings #allowIStrings:
Sat, 01 Aug 2020 16:59:10 +0200 #DOCUMENTATION by exept
Claus Gittinger <cg@exept.de> [Sat, 01 Aug 2020 16:59:10 +0200] rev 4697
#DOCUMENTATION by exept class: Scanner comment/format in: #actionToDisableWarning:
Sat, 01 Aug 2020 16:57:39 +0200 #UI_ENHANCEMENT by exept
Claus Gittinger <cg@exept.de> [Sat, 01 Aug 2020 16:57:39 +0200] rev 4696
#UI_ENHANCEMENT by exept class: Parser changed: #warnIfPossiblyUninitializedLocal:
Fri, 31 Jul 2020 10:28:33 +0200 #REFACTORING by exept
Claus Gittinger <cg@exept.de> [Fri, 31 Jul 2020 10:28:33 +0200] rev 4695
#REFACTORING by exept class: ConstantNode changed: #codeForSideEffectOn:inBlock:for:
Fri, 31 Jul 2020 10:27:46 +0200 #REFACTORING by exept
Claus Gittinger <cg@exept.de> [Fri, 31 Jul 2020 10:27:46 +0200] rev 4694
#REFACTORING by exept class: Parser comment/format in: #checkForLowercaseVariableName: #checkLocalVariableNameConventionsFor: #parseMethodBodyVarSpec changed: #blockBody #checkForProperUseOfArticleInVariableName: #checkReturnedValues #inlineObjectFrom: #primary #primary_identifier #warnIfPossiblyUninitializedLocal: #warnSTXNameSpaceUseAt:
Fri, 31 Jul 2020 10:26:46 +0200 #REFACTORING by exept
Claus Gittinger <cg@exept.de> [Fri, 31 Jul 2020 10:26:46 +0200] rev 4693
#REFACTORING by exept class: ParserFlags class definition added: #warnSTXSpecials: class: ParserFlags class added: #warnAboutInlineObjects #warnAboutInlineObjects: changed: #initialize
Fri, 31 Jul 2020 10:25:57 +0200 #REFACTORING by exept
Claus Gittinger <cg@exept.de> [Fri, 31 Jul 2020 10:25:57 +0200] rev 4692
#REFACTORING by exept class: Scanner added: #actionToDisableWarning: changed: #skipComment #warnDollarAt: #warnOldStyleAssignmentAt: #warnParagraphAt: #warnPeriodAt: #warnPossibleIncompatibility:position:to: #warnSTXSpecialCommentAt:to: #warnUnderscoreAt:
Fri, 31 Jul 2020 09:48:25 +0200 #UI_ENHANCEMENT by exept
Claus Gittinger <cg@exept.de> [Fri, 31 Jul 2020 09:48:25 +0200] rev 4691
#UI_ENHANCEMENT by exept class: ConstantNode class definition changed: #codeForSideEffectOn:inBlock:for:
Fri, 31 Jul 2020 09:45:40 +0200 #FEATURE by exept
Claus Gittinger <cg@exept.de> [Fri, 31 Jul 2020 09:45:40 +0200] rev 4690
#FEATURE by exept class: ParserFlags class definition added: #warnAboutDeadCodeAndFixMe #warnAboutDeadCodeAndFixMe: changed: #initialize class: ParserFlags class added: #warnAboutDeadCodeAndFixMe #warnAboutDeadCodeAndFixMe: changed: #initialize
Wed, 29 Jul 2020 19:02:27 +0200 #UI_ENHANCEMENT by exept
Claus Gittinger <cg@exept.de> [Wed, 29 Jul 2020 19:02:27 +0200] rev 4689
#UI_ENHANCEMENT by exept class: Parser changed: #parseMethodBodyVarSpec
Tue, 28 Jul 2020 11:45:18 +0200 #REFACTORING by bg
Claus Gittinger <cg@exept.de> [Tue, 28 Jul 2020 11:45:18 +0200] rev 4688
#REFACTORING by bg class: Scanner comment/format in: #nextToken changed: #invalidCharacter:
Mon, 27 Jul 2020 13:12:46 +0000 update tags
convert-repo [Mon, 27 Jul 2020 13:12:46 +0000] rev 4687
update tags
Sun, 26 Jul 2020 18:26:52 +0200 #BUGFIX by cg
Claus Gittinger <cg@exept.de> [Sun, 26 Jul 2020 18:26:52 +0200] rev 4686
#BUGFIX by cg class: BreakpointNode added: #isUnaryMessage DNU
Sat, 25 Jul 2020 11:39:03 +0200 #FEATURE by cg
Claus Gittinger <cg@exept.de> [Sat, 25 Jul 2020 11:39:03 +0200] rev 4685
#FEATURE by cg class: Parser changed: #parseAnnotationLiteral #parseOtherPrimitives #parseTraditionalPrimitive
Wed, 22 Jul 2020 11:55:55 +0200 #DEBUGCODEREMOVED by cg
Claus Gittinger <cg@exept.de> [Wed, 22 Jul 2020 11:55:55 +0200] rev 4684
#DEBUGCODEREMOVED by cg class: Parser changed: #typedArray:
Tue, 14 Jul 2020 12:24:06 +0200 #BUGFIX by cg
Claus Gittinger <cg@exept.de> [Tue, 14 Jul 2020 12:24:06 +0200] rev 4683
#BUGFIX by cg class: Scanner changed: #skipComment endPosition off by one
Tue, 14 Jul 2020 09:55:17 +0200 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de> [Tue, 14 Jul 2020 09:55:17 +0200] rev 4682
#UI_ENHANCEMENT by cg class: Scanner::Comment added: #displayOn:
Mon, 22 Jun 2020 19:57:57 +0200 #QUALITY by stefan expecco_20_1_0 expecco_20_1_0_final expecco_ALM_1_16_0
Stefan Vogel <sv@exept.de> [Mon, 22 Jun 2020 19:57:57 +0200] rev 4681
#QUALITY by stefan class: ObjectFileHandle changed: #update:with:from: use Logger
Thu, 18 Jun 2020 12:26:06 +0200 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de> [Thu, 18 Jun 2020 12:26:06 +0200] rev 4680
#DOCUMENTATION by cg class: ParseNode comment/format in: #objectAttributes
Tue, 16 Jun 2020 19:08:41 +0200 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de> [Tue, 16 Jun 2020 19:08:41 +0200] rev 4679
#DOCUMENTATION by cg class: STCCompilerInterface comment/format in: #compileToC_onError: changed: #setupCompilationCommandArguments
Fri, 12 Jun 2020 17:22:27 +0200 info
Claus Gittinger <cg@exept.de> [Fri, 12 Jun 2020 17:22:27 +0200] rev 4678
info
Fri, 12 Jun 2020 16:07:20 +0200 #REFACTORING by cg
Claus Gittinger <cg@exept.de> [Fri, 12 Jun 2020 16:07:20 +0200] rev 4677
#REFACTORING by cg class: Parser class changed: #selectorInExpression:
Tue, 09 Jun 2020 15:13:59 +0200 #BUGFIX by cg
Claus Gittinger <cg@exept.de> [Tue, 09 Jun 2020 15:13:59 +0200] rev 4676
#BUGFIX by cg class: ByteCodeCompiler changed: #compile:forClass:inCategory:notifying:install:skipIfSame:silent:foldConstants: return value was not the method (ifFail)
Fri, 05 Jun 2020 11:10:57 +0200 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de> [Fri, 05 Jun 2020 11:10:57 +0200] rev 4675
#DOCUMENTATION by cg class: Scanner changed: #nextSpecialWith:
Fri, 29 May 2020 10:27:27 +0200 #QUALITY by stefan
Stefan Vogel <sv@exept.de> [Fri, 29 May 2020 10:27:27 +0200] rev 4674
#QUALITY by stefan class: Structure changed: #doesNotUnderstand: use Logger
Wed, 27 May 2020 17:42:07 +0200 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de> [Wed, 27 May 2020 17:42:07 +0200] rev 4673
#UI_ENHANCEMENT by cg class: Explainer class changed: #valueStringFor:
Sun, 24 May 2020 11:26:33 +0200 #REFACTORING by cg
Claus Gittinger <cg@exept.de> [Sun, 24 May 2020 11:26:33 +0200] rev 4672
#REFACTORING by cg class: Parser changed: #selectorCheck:for:positions: foreignSelector annotation handling
Sun, 24 May 2020 03:39:42 +0200 #BUGFIX by cg
Claus Gittinger <cg@exept.de> [Sun, 24 May 2020 03:39:42 +0200] rev 4671
#BUGFIX by cg foreignSelectors had bad syntax
Sun, 24 May 2020 03:18:13 +0200 #BUGFIX by cg
Claus Gittinger <cg@exept.de> [Sun, 24 May 2020 03:18:13 +0200] rev 4670
#BUGFIX by cg class: Parser changed: #selectorCheck:for:positions:
Sat, 09 May 2020 17:01:24 +0200 #BUGFIX by cg
Claus Gittinger <cg@exept.de> [Sat, 09 May 2020 17:01:24 +0200] rev 4669
#BUGFIX by cg class: AbstractSyntaxHighlighter added: #formatMethodSource:in:using: changed: #formatExpression:in: #formatMethod:source:in:using: classToCompileFor was not set; input/outputs were marked as unknown vars
Sat, 09 May 2020 13:23:23 +0200 #FEATURE by cg
Claus Gittinger <cg@exept.de> [Sat, 09 May 2020 13:23:23 +0200] rev 4668
#FEATURE by cg class: SyntaxHighlighter class definition added: #unknownVariableResolver
Sat, 09 May 2020 13:23:13 +0200 #FEATURE by cg
Claus Gittinger <cg@exept.de> [Sat, 09 May 2020 13:23:13 +0200] rev 4667
#FEATURE by cg class: Parser added: #unknownVariableResolver comment/format in: #correctVariable:atPosition:to: changed: #variableOrError:
Thu, 24 Jun 2021 18:04:31 +0100 Allow identifiers to start with $ (dollar) jv
Jan Vrany <jan.vrany@labware.com> [Thu, 24 Jun 2021 18:04:31 +0100] rev 4666
Allow identifiers to start with $ (dollar) ...when flag `allowDollarInIdentifier` is on.
Mon, 28 Jun 2021 10:40:16 +0100 Allow setting custom variable resolver for parsing / compilation jv
Jan Vrany <jan.vrany@labware.com> [Mon, 28 Jun 2021 10:40:16 +0100] rev 4665
Allow setting custom variable resolver for parsing / compilation Normally there's none - this interface is provided for cases where user wants to provide her own variable bindings - useful when evaluating custom scripts.
Fri, 25 Jun 2021 15:28:41 +0100 Improve `Parser >> #checkSelector:for:inClass:` jv
Jan Vrany <jan.vrany@labware.com> [Fri, 25 Jun 2021 15:28:41 +0100] rev 4664
Improve `Parser >> #checkSelector:for:inClass:` ...to work better with alien code (such as, with RING environment)
Wed, 19 May 2021 11:47:43 +0100 Do not optimize `^ x and: y` and `^ x or: y` jv
Jan Vrany <jan.vrany@labware.com> [Wed, 19 May 2021 11:47:43 +0100] rev 4663
Do not optimize `^ x and: y` and `^ x or: y` The problem is that this actually prevents one from implementing boolean-like objects. For example, MachineArithmetic [1] does that. [1]: https://github.com/shingarov/MachineArithmetic
Mon, 22 Mar 2021 23:40:55 +0000 Oops, use `#realSharedPoolNames` when searching inherited shared pools jv
Jan Vrany <jan.vrany@labware.com> [Mon, 22 Mar 2021 23:40:55 +0000] rev 4662
Oops, use `#realSharedPoolNames` when searching inherited shared pools The shared pool check block accepts names, not pools themselves!
Tue, 16 Feb 2021 08:21:08 +0000 `Decompiler:` print indication that indirect literal frame is used. jv
Jan Vrany <jan.vrany@labware.com> [Tue, 16 Feb 2021 08:21:08 +0000] rev 4661
`Decompiler:` print indication that indirect literal frame is used.
Fri, 05 Feb 2021 07:50:59 +0000 Fix bug in parsing literal arrays jv
Jan Vrany <jan.vrany@labware.com> [Fri, 05 Feb 2021 07:50:59 +0000] rev 4660
Fix bug in parsing literal arrays ...containing unquoted symbols starting with underscore, i.e., #(_a:bc:) which were wrongly parsed as `#(#'_a:_bc')`. Also, there was a DNU (rather than syntax error) when parsing unterminated array literal like: #(_a:bc: This commit fixes both problems.
Wed, 03 Feb 2021 11:50:00 +0000 Fix debug info w.r.t inlined blocks jv
Jan Vrany <jan.vrany@labware.com> [Wed, 03 Feb 2021 11:50:00 +0000] rev 4659
Fix debug info w.r.t inlined blocks It turned out that even if `BlockNode >> isInlinable` returns `true`, the block can still be full block (that is, NOT inlined). This lead to wrong debug info being generated, marking some variables as inlined even though they were not. To workaround this, introduce a new `BlockNode >> #isInlined` that returns true whether or not the block was inlined during compilation. This should be called (i.e., it is valid) only after code generation. The code to create debug info is then changed to use `#isInlined` instead of `#isInlinable`.
Thu, 17 Dec 2020 12:32:31 +0000 Add compiler flag to allow usage of inherited pools jv
Jan Vrany <jan.vrany@labware.com> [Thu, 17 Dec 2020 12:32:31 +0000] rev 4658
Add compiler flag to allow usage of inherited pools This mimics the behavior of many other smalltalks, most notably the one of Squeak / Pharo and Bee. While this is not supported by `stc`, it allows to work with such code in Smalltalk/X.
Sat, 08 Aug 2020 22:49:53 +0100 Set parent in `BreakpointNode >> #expression:` jv
Jan Vrany <jan.vrany@labware.com> [Sat, 08 Aug 2020 22:49:53 +0100] rev 4657
Set parent in `BreakpointNode >> #expression:` ...to self. A parent chain must lead to a top-level statement / method node for `BlockNode >> method` to work properly, which is needed for correct generation of debug info when compiling method with line breakpoints.
Sat, 08 Aug 2020 08:47:17 +0100 Fix various node enumeration methods for `BreakpointNode` jv
Jan Vrany <jan.vrany@labware.com> [Sat, 08 Aug 2020 08:47:17 +0100] rev 4656
Fix various node enumeration methods for `BreakpointNode`
Mon, 29 Jun 2020 22:39:06 +0100 Fix `Context >> #dbgVariables` to return `#()` for contexts without a method jv
Jan Vrany <jan.vrany@labware.com> [Mon, 29 Jun 2020 22:39:06 +0100] rev 4655
Fix `Context >> #dbgVariables` to return `#()` for contexts without a method
Tue, 09 Jun 2020 14:01:25 +0100 Fixed compiler to produce correct(ish) variable table jv
Jan Vrany <jan.vrany@labware.com> [Tue, 09 Jun 2020 14:01:25 +0100] rev 4654
Fixed compiler to produce correct(ish) variable table This commit fixes a number of issues w.r.t inlined blocks and variable tables: * inlined blocks were mis-detected, we have to use `#isInlinable` as the `#isInlined` actually return `false` always, * there we duplicated records in variable table because some blocks have been visitied more than once, * block-locals for inlined blocks in method have wrong offsets since method arguments were not take into the account. For example, before this commit `ExternalLibraryFunction >> ffiCall:` had completely bogus info when bytecode-compiled.
Wed, 27 May 2020 15:47:18 +0100 Implement `Context >> argAndVarNames` using compiler-recorded debug info jv
Jan Vrany <jan.vrany@fit.cvut.cz> [Wed, 27 May 2020 15:47:18 +0100] rev 4653
Implement `Context >> argAndVarNames` using compiler-recorded debug info This implementation overrides the one from stx:libbasic which never worked properly (and it's horribly complex).
Fri, 22 May 2020 23:03:41 +0100 Fix ParserFlags and STCCompilerInterface to work with out-of-tree builds jv
Jan Vrany <jan.vrany@fit.cvut.cz> [Fri, 22 May 2020 23:03:41 +0100] rev 4652
Fix ParserFlags and STCCompilerInterface to work with out-of-tree builds ...in addition to old, in-tree builds. This requies searching in `'build' / Smalltalk configuration` as well.
Sat, 25 Jan 2020 21:36:19 +0000 Search for binary class libraries in `build/<target>` first jv
Jan Vrany <jan.vrany@fit.cvut.cz> [Sat, 25 Jan 2020 21:36:19 +0000] rev 4651
Search for binary class libraries in `build/<target>` first This is to support out-of-tree builds which allow one to compile Smallalk/X for multiple targets out of one source tree (useful for testing)
Sun, 03 May 2020 23:44:59 +0200 #FEATURE by cg
Claus Gittinger <cg@exept.de> [Sun, 03 May 2020 23:44:59 +0200] rev 4650
#FEATURE by cg class: ParseError added: #position
Fri, 27 Mar 2020 13:40:07 +0100 #BUGFIX by stefan
Stefan Vogel <sv@exept.de> [Fri, 27 Mar 2020 13:40:07 +0100] rev 4649
#BUGFIX by stefan class: AssignmentNode added: #variableNodesDo:
Thu, 05 Mar 2020 11:17:54 +0100 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de> [Thu, 05 Mar 2020 11:17:54 +0100] rev 4648
#UI_ENHANCEMENT by cg class: Parser changed: #errorMessageForUndefined: #selectorCheck:for:positions: typos: genitive of class is class's - not classes.
Wed, 26 Feb 2020 14:49:26 +0100 #FEATURE by cg
Claus Gittinger <cg@exept.de> [Wed, 26 Feb 2020 14:49:26 +0100] rev 4647
#FEATURE by cg class: Breakpoint added: #method comment/format in: #method:
Tue, 25 Feb 2020 13:47:30 +0100 #REFACTORING by cg
Claus Gittinger <cg@exept.de> [Tue, 25 Feb 2020 13:47:30 +0100] rev 4646
#REFACTORING by cg class: Explainer class withCRs eliminated hanged: #explain:in:forClass:short: #explainGlobalOrPoolVariable:inClass:short: #explainSelector:inClass:short: #fetchCommentOfMethod:
Tue, 25 Feb 2020 13:41:08 +0100 #BUGFIX by cg
Claus Gittinger <cg@exept.de> [Tue, 25 Feb 2020 13:41:08 +0100] rev 4645
#BUGFIX by cg class: Explainer class changed: #explain:in:forClass:short:
Tue, 25 Feb 2020 13:40:53 +0100 #BUGFIX by cg
Claus Gittinger <cg@exept.de> [Tue, 25 Feb 2020 13:40:53 +0100] rev 4644
#BUGFIX by cg class: Parser changed: #stringWithEmbeddedExpressions
Tue, 25 Feb 2020 13:40:16 +0100 #BUGFIX by cg
Claus Gittinger <cg@exept.de> [Tue, 25 Feb 2020 13:40:16 +0100] rev 4643
#BUGFIX by cg class: SyntaxHighlighter comment/format in: #markParenthesisAt:
Tue, 25 Feb 2020 12:31:40 +0100 #REFACTORING by exept
Claus Gittinger <cg@exept.de> [Tue, 25 Feb 2020 12:31:40 +0100] rev 4642
#REFACTORING by exept class: ParserFlags class changed: #initialize
Tue, 25 Feb 2020 03:22:56 +0100 #DOCUMENTATION by exept
Claus Gittinger <cg@exept.de> [Tue, 25 Feb 2020 03:22:56 +0100] rev 4641
#DOCUMENTATION by exept class: Parser changed: #stringWithEmbeddedExpressions
Tue, 25 Feb 2020 02:40:09 +0100 #DOCUMENTATION by exept
Claus Gittinger <cg@exept.de> [Tue, 25 Feb 2020 02:40:09 +0100] rev 4640
#DOCUMENTATION by exept class: ParserFlags class comment/format in: #allowCStrings #allowEStrings changed: #initialize
Sat, 22 Feb 2020 21:23:30 +0100 #BUGFIX by exept
Claus Gittinger <cg@exept.de> [Sat, 22 Feb 2020 21:23:30 +0100] rev 4639
#BUGFIX by exept class: Explainer class changed: #thisOrNewBrowserInto:
Fri, 21 Feb 2020 15:17:54 +0100 #REFACTORING by cg
Claus Gittinger <cg@exept.de> [Fri, 21 Feb 2020 15:17:54 +0100] rev 4638
#REFACTORING by cg class: Parser changed: #primary
Fri, 21 Feb 2020 15:17:26 +0100 #REFACTORING by cg
Claus Gittinger <cg@exept.de> [Fri, 21 Feb 2020 15:17:26 +0100] rev 4637
#REFACTORING by cg class: Scanner changed: #nextNumber
Fri, 21 Feb 2020 15:16:30 +0100 #REFACTORING by cg
Claus Gittinger <cg@exept.de> [Fri, 21 Feb 2020 15:16:30 +0100] rev 4636
#REFACTORING by cg class: ParserFlags changed: #allowExtendedBinarySelectors #allowFixedPointLiterals class: ParserFlags class changed: #allowExtendedBinarySelectors #allowFixedPointLiterals
Fri, 14 Feb 2020 09:07:14 +0100 unsigned INT vs. UINT (on OSX)
Claus Gittinger <cg@exept.de> [Fri, 14 Feb 2020 09:07:14 +0100] rev 4635
unsigned INT vs. UINT (on OSX)
Thu, 13 Feb 2020 18:00:27 +0100 #BUGFIX by stefan
Stefan Vogel <sv@exept.de> [Thu, 13 Feb 2020 18:00:27 +0100] rev 4634
#BUGFIX by stefan class: ObjectFileLoader class changed: #primLoadDynamicObject:into: #primUnloadDynamicObject: #unloadDynamicObject: Disable FreeLibrary() for BorlandC, reenable it for MINGW
Thu, 13 Feb 2020 15:46:48 +0100 #BUGFIX by stefan
Stefan Vogel <sv@exept.de> [Thu, 13 Feb 2020 15:46:48 +0100] rev 4633
#BUGFIX by stefan class: ObjectFileLoader class changed: #primUnloadDynamicObject: Workaround in 1.403 was not needed - undo it
Thu, 13 Feb 2020 15:30:42 +0100 #WORKAROUND by stefan
Stefan Vogel <sv@exept.de> [Thu, 13 Feb 2020 15:30:42 +0100] rev 4632
#WORKAROUND by stefan class: ObjectFileLoader class changed: #primUnloadDynamicObject: again, relly work around BCC expecco freeze
Thu, 13 Feb 2020 15:18:46 +0100 #BUGFIX by stefan
Stefan Vogel <sv@exept.de> [Thu, 13 Feb 2020 15:18:46 +0100] rev 4631
#BUGFIX by stefan class: ObjectFileLoader class changed: #primUnloadDynamicObject: fix expcco startup failure in BCC build
Tue, 11 Feb 2020 17:51:19 +0100 #BUGFIX by stefan
Stefan Vogel <sv@exept.de> [Tue, 11 Feb 2020 17:51:19 +0100] rev 4630
#BUGFIX by stefan class: ByteCodeCompiler changed: #compile:forClass:inCategory:notifying:install:skipIfSame:silent:foldConstants:ifFail: failBlock may have an optional argument
Thu, 06 Feb 2020 13:48:35 +0100 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de> [Thu, 06 Feb 2020 13:48:35 +0100] rev 4629
#UI_ENHANCEMENT by cg class: ParseError changed: #description
Wed, 05 Feb 2020 17:25:35 +0100 #REFACTORING by stefan
Stefan Vogel <sv@exept.de> [Wed, 05 Feb 2020 17:25:35 +0100] rev 4628
#REFACTORING by stefan class: VariableNode changed: #store: remove return after return
Thu, 30 Jan 2020 09:41:36 +0100 #REFACTORING by exept
Claus Gittinger <cg@exept.de> [Thu, 30 Jan 2020 09:41:36 +0100] rev 4627
#REFACTORING by exept class: Explainer::ActionWithInfo category of: #info
Tue, 28 Jan 2020 20:30:08 +0100 #QUALITY by cg
Claus Gittinger <cg@exept.de> [Tue, 28 Jan 2020 20:30:08 +0100] rev 4626
#QUALITY by cg class: InstrumentingCompiler::MethodInvocationInfo added: #printOn:
Tue, 28 Jan 2020 18:59:34 +0100 #FEATURE by cg
Claus Gittinger <cg@exept.de> [Tue, 28 Jan 2020 18:59:34 +0100] rev 4625
#FEATURE by cg class: InstrumentingCompiler class added: #cleanAllInfos changed: #cleanAllInfo #compileMethod:
Tue, 28 Jan 2020 17:36:38 +0100 #BUGFIX by cg
Claus Gittinger <cg@exept.de> [Tue, 28 Jan 2020 17:36:38 +0100] rev 4624
#BUGFIX by cg class: InstrumentingCompiler class changed: #compileMethod:
Tue, 28 Jan 2020 17:35:28 +0100 #REFACTORING by cg
Claus Gittinger <cg@exept.de> [Tue, 28 Jan 2020 17:35:28 +0100] rev 4623
#REFACTORING by cg class: InstrumentingCompiler added: #undefError:position:to: removed: #correctVariable:atPosition:to:
Tue, 28 Jan 2020 17:19:15 +0100 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de> [Tue, 28 Jan 2020 17:19:15 +0100] rev 4622
#DOCUMENTATION by cg class: InstrumentedMethod comment/format in: #isInstrumented
Tue, 28 Jan 2020 17:19:05 +0100 #REFACTORING by cg
Claus Gittinger <cg@exept.de> [Tue, 28 Jan 2020 17:19:05 +0100] rev 4621
#REFACTORING by cg class: InstrumentingCompiler added: #correctVariable:atPosition:to: class: InstrumentingCompiler class changed: #compileMethod:
Tue, 28 Jan 2020 16:02:31 +0100 #FEATURE by cg
Claus Gittinger <cg@exept.de> [Tue, 28 Jan 2020 16:02:31 +0100] rev 4620
#FEATURE by cg class: InstrumentingCompiler class changed: #compileMethod:
Tue, 28 Jan 2020 04:27:55 +0000 update tags expecco_19_2_1
convert-repo [Tue, 28 Jan 2020 04:27:55 +0000] rev 4619
update tags
Mon, 27 Jan 2020 12:51:03 +0100 #BUGFIX by exept
Claus Gittinger <cg@exept.de> [Mon, 27 Jan 2020 12:51:03 +0100] rev 4618
#BUGFIX by exept class: Parser changed: #returnStatement
Mon, 06 Jan 2020 04:27:03 +0000 update tags
convert-repo [Mon, 06 Jan 2020 04:27:03 +0000] rev 4617
update tags
Sun, 05 Jan 2020 17:28:09 +0100 #REFACTORING by exept
Claus Gittinger <cg@exept.de> [Sun, 05 Jan 2020 17:28:09 +0100] rev 4616
#REFACTORING by exept class: ObjectFileLoader class changed: #createLoadableObjectFor:
(0) -3000 -1000 -120 tip