[squeak-dev] Solving multiple termination bugs - summary & proposal

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Sat Apr 10 21:21:33 UTC 2021


Hi Jaromir,
many thanks for those efforts and for perseverating.
It must be a bit frustrating to not receive any answer to this good
work and deep investment, but there is a good reason for that: the
subject is tough, and not everyone is able to give you a quick answer
without reinvesting an equivalent slot of time as you personally did.

This change-set looks good to my eyes, the level of comment is good
too and gives me some additional confidence.
I'm probably not at your level of expertise yet, but I vote for
integrating this in trunk.
In the meantime, I'll leave with it in my image(s) for a few days.
You can as well submit an inbox contribution as you did previously,
this is the preferred way, unless the changes span many packages.

cheers

Nicolas

Le sam. 10 avr. 2021 à 10:58, Jaromir Matas <m at jaromir.net> a écrit :
>
> Hi,
>
> The enclosed changeset fixes all bugs/inconsistencies concerning process
> termination listed below. It's a simplified version of the previous
> proposal. Feedback very welcome indeed!
>
> The idea is to simply extend the existing mechanism for completing
> halfway-through unwind blocks and let it deal with *all* unwind blocks.
>
> best,
>
> Fix_terminate_v3.cs <http://forum.world.st/file/t372955/Fix_terminate_v3.cs>
>
>
> Jaromir Matas wrote
> > Hi All,
> >
> > here's a summary of bugs in the current termination procedure:
> >
> > 1. #isTerminated and #isSuspended fail to report correctly - in [1]
> >
> > 2. active process termination bug causing an image crash - in [2]
> >
> > 3. nested unwind bug: skipping some ensure blocks - in [3]
> >
> > 4. likely a bug: a failure to complete nested unwind blocks halfway thru
> > execution - also in [3]
> >
> > 5. Christoph's discovery: a failure to correctly close the debugger in
> > case
> > of error or non-local return in unwind - in [4]
> >
> > 6. inconsistent semantics of unwinding protected blocks during active vs.
> > suspended process termination
>
>
>
>
>
> -----
> ^[^ Jaromir
> --
> Sent from: http://forum.world.st/Squeak-Dev-f45488.html
>


More information about the Squeak-dev mailing list