[WEIRD][BUG]? MethodNodes mysterious alteration

Bijan Parsia bparsia at email.unc.edu
Fri Jan 25 17:37:00 UTC 2002


Ok, I'm trying to shake a parse tree to get all the juicy comments
out. Here's a little workspace code:

Compiler new parse:'parse: textOrStream in: aClass notifying: req
	"Compile the argument, textOrStream, with respect to the class,
aClass, 
	and answer the MethodNode that is the root of the resulting parse
tree. 
	Notify the argument, req, if an error occurs. The failBlock is
defaulted to 
	an empty block."
	|return|
     "A comment"
	return _  self parse: textOrStream in: aClass notifying: req
dialect: false. "another one"
	^return "yet another" "and another" ' in: Compiler notifying: nil.

I inspect the resultant MethodNode. If I do a self printString on it right
away, I get: 
'parse: textOrStream in: aClass notifying: req 
	"Compile the argument, textOrStream, with respect to the class,
aClass,  
	and answer the MethodNode that is the root of the resulting parse
tree.  
	Notify the argument, req, if an error occurs. The failBlock is
defaulted 
	to  
	an empty block."
...etc.'

If I select self from the left hand pane, I will *see* that text, then it
will up date to:

'parse: textOrStream in: aClass notifying: req 
	| return |
	return _ self
				parse: textOrStream
				in: aClass
				notifying: req
				dialect: false.
	^ return'

Which is what #printString will now return.

Huh?

3.2 gamma

(I've also noticed some visual artifacting in 3.2gamma, is it still
gamma? I can't track it down, but I've had morphic windows (Celeste) not
fill in all their panes until selected explicitly).)

Cheers,
Bijan Parsia.




More information about the Squeak-dev mailing list