From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: border1.nntp.dca1.giganews.com!nntp.giganews.com!usenet.blueworldhosting.com!feeder01.blueworldhosting.com!feeder.erje.net!eu.feeder.erje.net!eternal-september.org!feeder.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Simon Wright Newsgroups: comp.lang.ada Subject: Re: Strange bug in GNAT Date: Wed, 02 Jul 2014 21:12:06 +0100 Organization: A noiseless patient Spider Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: mx05.eternal-september.org; posting-host="117da9042fa4d6f5956a9b8f72035635"; logging-data="9761"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/ii5K6yKxkIwNNlCbIxqHcmSb6W6J6sQI=" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (darwin) Cancel-Lock: sha1:LZ151pEOs6etkSyuEL30W/f1eDk= sha1:jW0nKFX+zCZvnFyhzf2kuJnZah8= Xref: number.nntp.dca.giganews.com comp.lang.ada:187328 Date: 2014-07-02T21:12:06+01:00 List-Id: Natasha Kerensikova writes: > After a lot of experimentation, I found the following workaround, which > is committed: > > when others => > begin > return Error_Page > (AWS.Messages.S405, > Dispatcher.DB.Query.Data.Error_Template); > end; > end case; > > How can an anonymous block change anything? [...] > At this point, I'm completely lost on how to proceed. I would love to > report the bug, so that hopefully it might eventually be fixed, but > without a smallish reproducer I don't dare bothering AdaCore. Back when I was working on a supported project, I had a somewhat similar problem with a deeply-nested loop; AdaCore suggested using an anonymous block around some of the inner levels, which turned out to be a good workround. I suppose that the block resets some of the compiler internals, enough to prevent the problem manifesting itself. I don't think you should worry too much about the size of the reproducer; if they're interested they'll look, if not, not. But it might be best to supply all the source needed to compile the problematic unit (in a zip archive, for example). Is there any chance that you can reproduce the problem using GNAT GPL? You stand a *much* better chance of getting the problem looked at if so.