[Vm-dev] VM Maker: VMMaker.oscog-eem.1589.mcz

commits at source.squeak.org commits at source.squeak.org
Sun Dec 13 20:01:20 UTC 2015


Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-eem.1589.mcz

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

Name: VMMaker.oscog-eem.1589
Author: eem
Time: 13 December 2015, 11:59:36.929 am
UUID: 8f3e3018-1a3b-452e-8e65-417e9692bfd5
Ancestors: VMMaker.oscog-eem.1588

Slang: Oops.  Need to omit labels, even if they do say they're leaves.

=============== Diff against VMMaker.oscog-eem.1588 ===============

Item was changed:
  ----- Method: TStmtListNode>>emitCCodeOn:prependToEnd:level:generator: (in category 'C code generation') -----
  emitCCodeOn: aStream prependToEnd: aNodeOrNil level: level generator: aCodeGen
  	self emitCCommentOn: aStream level: level.
  	statements withIndexDo:
  		[:s :idx|
  		s isStmtList ifFalse:
  			[s emitCCommentOn: aStream level: level].
+ 		(s isLeaf and: [s isLabel not and: [aNodeOrNil isNil or: [idx < statements size]]]) ifFalse:
- 		(s isLeaf and: [aNodeOrNil isNil or: [idx < statements size]]) ifFalse:
  			[aStream peekLast ~~ Character tab ifTrue:
  				[aStream tab: level].
  			(aNodeOrNil notNil
  			 and: [idx = statements size])
  				ifTrue:
  					[s emitCCodeOn: aStream prependToEnd: aNodeOrNil level: level generator: aCodeGen]
  				ifFalse:
  					[s emitCCodeOn: aStream level: level generator: aCodeGen].
  			(self stream: aStream endsWithAnyOf: '};') ifFalse:
  				[s needsTrailingSemicolon ifTrue:
  					[aStream nextPut: $;]].
  			aStream peekLast ~~ Character cr ifTrue:
  				[aStream cr]]].
  !



More information about the Vm-dev mailing list