[squeak-dev] The Trunk: System-mt.1089.mcz

commits at source.squeak.org commits at source.squeak.org
Mon Sep 2 14:27:09 UTC 2019


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

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

Name: System-mt.1089
Author: mt
Time: 2 September 2019, 4:27:00.273994 pm
UUID: c9c311b5-5625-ba44-90eb-ecfdc1216633
Ancestors: System-mt.1088

Adds some support for the empty symbol because some tests rely on it. Hmpf.

=============== Diff against System-mt.1088 ===============

Item was changed:
  ----- Method: SystemNavigation>>allSentMessagesWithout: (in category 'query') -----
  allSentMessagesWithout: classesAndMessagesPair 
  	"Answer the set of selectors which are sent somewhere in the system,  
  	computed in the absence of the supplied classes and messages."
  	| sent absentClasses absentSelectors |
  	sent := IdentitySet new: CompiledMethod instanceCount.
  	absentClasses := classesAndMessagesPair first.
  	absentSelectors := classesAndMessagesPair second.
  	"sd 29/04/03"
  	Cursor execute showWhile: [
  		self environment allClassesAndTraitsDo: [:cls |
  			((absentClasses includes: cls)
  				ifTrue: [{}]
  				ifFalse: [{cls. cls classSide}])
  					do: [:each | (absentSelectors isEmpty
  						ifTrue: [each selectors]
  						ifFalse: [each selectors copyWithoutAll: absentSelectors])
  						do: [:sel | "Include all sels, but not if sent by self"
  							(each compiledMethodAt: sel) allLiteralsDo: [:m | 
  								self flag: #dicuss. "mt: How to distinguish a symbol from a selector?"
+ 								(m isSymbol and: [m size > 0 and: [m first isLowercase]])
- 								(m isSymbol and: [m first isLowercase])
  									ifTrue: ["might be sent"
  										m == sel ifFalse: [sent add: m]].
  									]]]]].
  	"The following may be sent without being in any literal frame"
  	Smalltalk specialSelectorNames do: [:sel | sent add: sel].
  	Smalltalk presumedSentMessages	do: [:sel | sent add: sel].
  	^ sent.!



More information about the Squeak-dev mailing list