[squeak-dev] CompiledMethodTest >> #testMethodClass

Frank Shearar frank.shearar at gmail.com
Fri Jan 10 09:56:20 UTC 2014


This fails because the CompiledMethod from a removed class returns nil
for its #methodClass.

The test implies that an orphaned method will still know its removed class.

However, Environment >> #forgetClass:logged: clearly nils out the
binding of a removed class:

    "snip other stuff"
    undeclared declare: aClass name from: declarations.
    declarations removeKey: aClass name ifAbsent: [].
    [undeclared at: aClass name put: nil]
        on: AttemptToWriteReadOnlyGlobal
        do: [:n | n resume: true].
    self binding: binding removedFrom: self]

So is this just an API change? Should the test be updated, or is this a bug?

frank


More information about the Squeak-dev mailing list