gnat-4.6 and strange operator visibility issues
I have encountered two problems with gnat-4.6 which appear to be
regressions from earlier versions:
Subprograms declared Inline_Always sometimes fail to notice the
visibility of operators when called from a scope where the operator is
not visible. Dropping the Inline_Always pragma fixes this.
I have a generic subprogram which takes an argument of a type which is
a subtype of Interfaces.C.int, and the argument defaults to -1. The
"-" operator is reported as invisible at the point of instantiation.
Does this sound familiar? If not, I while try to come up with a
reduced test case.
The sources are available at <http://git.enyo.de/fw/dnslogger.git/>,
the workarounds are in commit 1abace653f7194b844c01221def6a4c77c1fee28
and 8b9a4a3ba754af04f06e0b3fee37806c9220ed9d. This code is currently
difficult to compile because there is a hard dependency on an ancient
Berkeley DB version.
Reply to: