[squeak-dev] The Inbox: Kernel-ct.1297.mcz

Thiede, Christoph Christoph.Thiede at student.hpi.uni-potsdam.de
Sat Feb 15 14:55:35 UTC 2020


Perfect, thank you!

________________________________
Von: Squeak-dev <squeak-dev-bounces at lists.squeakfoundation.org> im Auftrag von David T. Lewis <lewis at mail.msen.com>
Gesendet: Samstag, 15. Februar 2020 01:59:51
An: The general-purpose Squeak developers list
Betreff: Re: [squeak-dev] The Inbox: Kernel-ct.1297.mcz

Hi Christoph,

On Fri, Feb 14, 2020 at 02:40:05PM +0000, Thiede, Christoph wrote:
> @David:
>
>
> > Item was removed:
>
> > - ----- Method: ObjectTracer class>>initialize (in category 'initialize-release') -----
>
> > - initialize
> > -        "Fix for inconsistent image state in which ObjectTracer improperly appears as a subclass
> > -        of Class. This initialization should appear in the Squeak update stream in order to repair
> > -        existing images, and may be removed in a future update."
> > -
> > -        Class removeSubclass: ObjectTracer class!
>
>
> Is this ok?


Thanks for checking. Yes, removing this #initialize method is ok.


> Can you tell me why you did not use a postscript for that? :-)

There are only two possible explanations:

  1) Stupidity
  2) Ignorance

I don't recall which of the two it was it in particular case, but either
way you are right in suggesting that I should have used a postscript :-)

Looking back through the commit history, it was introduced here:

  Name: Kernel-dtl.856
  Author: dtl
  Time: 15 June 2014, 10:42:28.524 am
  UUID: 5a0967c5-86ae-4631-9d20-d960cd97abb1
  Ancestors: Kernel-cmm.855

  Fix inconsistent image state as reported on squeak-dev:

  Date: Wed, 11 Jun 2014 23:44:42 -0400
  From: Florin Mateoc
  To: The general-purpose Squeak developers list
  Subject: [squeak-dev] Class subclasses

  I think this is an old bug, presumably since ProtoObject was introduced
  (and presumably because ObjectTracer was used in the process).

  If you ask Class for its subclasses (or if you inspect it) you see that
  ObjectTracer class is listed along with ProtoObject class, although
  ObjectTracer's superclass is ProtoObject. This can lead to some funny
  bugs if you try to write some hierarchy traversing code.


For background, the original problem report and discussion are at
http://lists.squeakfoundation.org/pipermail/squeak-dev/2014-June/178522.html

Dave


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20200215/58993ee3/attachment.html>


More information about the Squeak-dev mailing list