"Dmitry A. Kazakov" writes: > On 22/01/2018 00:07, Mehdi Saada wrote: >> An exception is declared in an package, P1, instance of P1_G, and >> the RM says I can't use it in a handler... why so ? > > No, it does not say so. As Jeffrey already explained, generic package > is not a package. An exception declared in a generic package is not an > exception until the package is instantiated. You cannot reference to > that fake exception as a normal one. The message we get is generics.ada:17:10: exception "Ex0" is declared in generic formal package generics.ada:17:10: and therefore cannot appear in handler (RM 11.2(8)) and the AARM reason is "This is because the compiler doesn't know the identity of such an exception, and thus can't enforce the coverage rules." Well, if you say so ...