catch change-notifications from Smalltalk (to flush PrevClass cache)
authorClaus Gittinger <cg@exept.de>
Tue, 26 Sep 2000 14:38:54 +0200
changeset 1090 7f49c607a315
parent 1089 ac7a3f73e18f
child 1091 0c8426791571
catch change-notifications from Smalltalk (to flush PrevClass cache)
Parser.st
--- a/Parser.st	Fri Sep 22 01:53:14 2000 +0200
+++ b/Parser.st	Tue Sep 26 14:38:54 2000 +0200
@@ -299,9 +299,14 @@
     "aClass has changed its definition - flush name caches if we have to"
 
     (changedObject == PrevClass) ifTrue:[
-	something == #definition ifTrue:[
-	    self flushNameCache
-	]
+        something == #definition ifTrue:[
+            self flushNameCache
+        ]
+    ].
+    (changedObject == Smalltalk) ifTrue:[
+        something == #classDefinition ifTrue:[
+            self flushNameCache
+        ]
     ]
 ! !
 
@@ -322,6 +327,7 @@
         ParseErrorSignal notifierString:'parse error'.
         ParseErrorSignal nameClass:self message:#parseErrorSignal.
     ].
+    Smalltalk addDependent:self.
 
     "
      self initialize
@@ -5614,6 +5620,6 @@
 !Parser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libcomp/Parser.st,v 1.264 2000-09-21 23:53:14 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libcomp/Parser.st,v 1.265 2000-09-26 12:38:54 cg Exp $'
 ! !
 Parser initialize!