[squeak-dev] The Trunk: ShoutCore-mt.76.mcz

Thiede, Christoph Christoph.Thiede at student.hpi.uni-potsdam.de
Fri Dec 6 22:54:06 UTC 2019


Hi Marcel,


Did you see ShoutCore-ct.76? I think my solution could also work for dead contexts, instead of just refusing to style :-)


Best,

Christoph

________________________________
Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von commits at source.squeak.org <commits at source.squeak.org>
Gesendet: Donnerstag, 21. November 2019 15:51:18
An: squeak-dev at lists.squeakfoundation.org; packages at lists.squeakfoundation.org
Betreff: [squeak-dev] The Trunk: ShoutCore-mt.76.mcz

Marcel Taeumel uploaded a new version of ShoutCore to project The Trunk:
http://source.squeak.org/trunk/ShoutCore-mt.76.mcz

==================== Summary ====================

Name: ShoutCore-mt.76
Author: mt
Time: 21 November 2019, 3:51:18.231156 pm
UUID: c0aa1566-69f3-1845-8993-0f5f67fcdb96
Ancestors: ShoutCore-eem.75

Fixes a bug with syntax highlighting for dead context's in the debugger.

=============== Diff against ShoutCore-eem.75 ===============

Item was changed:
  ----- Method: SHParserST80>>initializeInstanceVariables (in category 'parse support') -----
  initializeInstanceVariables

         instanceVariables := classOrMetaClass
                 ifNil: [ #() ]
                 ifNotNil: [ classOrMetaClass allInstVarNames asArray ].
         allowUnderscoreAssignments := Scanner allowUnderscoreAsAssignment.
         allowUnderscoreSelectors := Scanner prefAllowUnderscoreSelectors.
         allowBlockArgumentAssignment := Scanner allowBlockArgumentAssignment.
         sourcePosition := 1.
         arguments
                 ifNil: [ arguments := OrderedCollection with: nil ]
                 ifNotNil: [ arguments reset; addLast: nil ].
         temporaries
                 ifNil: [ temporaries := OrderedCollection with: nil ]
                 ifNotNil: [ temporaries reset; addLast: nil ].
+        (context notNil and: [ context isDead not ])
+                ifTrue: [ self initializeVariablesFromContext ].
-        context ifNotNil: [ self initializeVariablesFromContext ].
         bracketDepth := 0.
         ranges
                 ifNil: [ ranges := OrderedCollection new: 40 "Covers over 80% of all methods." ]
                 ifNotNil: [ ranges reset ]!

Item was changed:
  ----- Method: SHParserST80>>initializeVariablesFromContext (in category 'parse support') -----
  initializeVariablesFromContext

         | contextSourcePcIndex contextSourceParser |
         contextSourcePcIndex := (context debuggerMap
                 rangeForPC: context pc
                 in: context method
+                contextIsActiveContext: true "... to really use the context's pc.")
-                contextIsActiveContext: true "little white lie to work in every situation")
                         start.
         contextSourceParser := self class new
                 classOrMetaClass: context method methodClass;
                 environment: self environment;
                 source: (context method getSource first: contextSourcePcIndex);
                 yourself.
         contextSourceParser parse.
         arguments := contextSourceParser activeArguments.
         temporaries  := contextSourceParser activeTemporaries.!


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20191206/842aa08f/attachment-0001.html>


More information about the Squeak-dev mailing list