recompile ns classes accessing private class name
without ns-prefix.
--- a/Metaclass.st Tue Sep 14 13:49:43 1999 +0200
+++ b/Metaclass.st Tue Sep 14 13:50:24 1999 +0200
@@ -996,7 +996,18 @@
recompileGlobalAccessTo notNil ifTrue:[
self recompileGlobalAccessorsTo:recompileGlobalAccessTo
in:namespace
- except:newClass
+ except:newClass.
+ ].
+
+ (thisIsPrivate
+ and:[newClass owningClass nameSpace notNil]) ifTrue:[
+ "/ namespace is a class;
+ "/ if this owner is itself in a namespace,
+ "/ must recompile all from owners namespace
+ "/ accessing the new class (without namespace prefix)
+ self recompileGlobalAccessorsTo:(newClass nameWithoutNameSpacePrefix asSymbol)
+ in:(newClass owningClass nameSpace)
+ except:newClass.
].
^ newClass
@@ -2019,6 +2030,6 @@
!Metaclass class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/Metaclass.st,v 1.152 1999-08-26 11:51:19 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/Metaclass.st,v 1.153 1999-09-14 11:50:24 cg Exp $'
! !
Metaclass initialize!