--- a/ClassDescription.st Wed Nov 27 19:50:37 2019 +0100
+++ b/ClassDescription.st Wed Nov 27 20:36:42 2019 +0100
@@ -1853,19 +1853,23 @@
newMethod := oldMethod class trapMethodForNumArgs:(oldMethod argumentCount).
newMethod source:code.
] do:[
- Class methodRedefinitionNotification answer:#keep do:[
- "/ hack - compilers have different protocols... (needs fix)
- (aCompiler respondsTo:#compile:forClass:inCategory:)
- ifTrue:[
- "/ ST/X's compiler
- aCompiler compile:code forClass:self inCategory:cat
- ] ifFalse:[
- "/ some other (TGEN) compiler
- aCompiler
- compile:code
- in:self
- notifying:nil
- ifFail:[].
+ UndefinedVariableError handle:[:ex |
+ ex proceed
+ ] do:[
+ Class methodRedefinitionNotification answer:#keep do:[
+ "/ hack - compilers have different protocols... (needs fix)
+ (aCompiler respondsTo:#compile:forClass:inCategory:)
+ ifTrue:[
+ "/ ST/X's compiler
+ aCompiler compile:code forClass:self inCategory:cat
+ ] ifFalse:[
+ "/ some other (TGEN) compiler
+ aCompiler
+ compile:code
+ in:self
+ notifying:nil
+ ifFail:[].
+ ].
].
].
].