https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116832

--- Comment #9 from Liam Powell <liam at liampwll dot com> ---
Last thing I want to note and then I'm giving up on trying to fully understand
what's going on here: The original Ada support commit has this comment (still
present today) regarding the ATC_Hack variable:

> --  The solution really belongs in the Abort_Signal handler
> --  for async. entry calls.  The present hack is very
> --  fragile. It relies that the very next point after
> --  Exit_One_ATC_Level at which the task becomes abortable
> --  will be the call to Undefer_Abort in the
> --  Abort_Signal handler.

It seems like what they're talking about here is exactly what I have done in my
patch. I can't figure out why they didn't just do what I've done since it's
much simpler then this whole dance with Abort_Undefer. There must be some more
complexity to this that my patch doesn't address correctly.

Reply via email to