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: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!.POSTED!not-for-mail From: Simon Wright Newsgroups: comp.lang.ada Subject: Re: Interrupt_Handler and "directly specified" Date: Fri, 20 Nov 2015 19:22:14 +0000 Organization: A noiseless patient Spider Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: mx02.eternal-september.org; posting-host="29a2b57997615acde1fccc73c72adb9b"; logging-data="32113"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18L4AnFTwefzVT0c1Nu1uBZRP7PqyMiWsA=" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (darwin) Cancel-Lock: sha1:AiyB0l5EF85clxTsuU1ozkZ8lQI= sha1:xR4/+VGWLMdJJS/xRTWHZFU7a5o= Xref: news.eternal-september.org comp.lang.ada:28479 Date: 2015-11-20T19:22:14+00:00 List-Id: "G.B." writes: > For a protected handler, I had specified an aspect, > > procedure On_1 > with Interrupt_Handler => True; > > and got a strange compiler diagnostic, listed below. > Compiling: parent-admin.adb > Source file time stamp: 2015-11-20 18:18:17 > Compiled at: 2015-11-20 19:18:28 > > 1. > 2. package body Parent.Admin is > 3. > 4. protected body P1 is > 5. > 6. procedure On_1 > | > >>> expected type "System.Interrupts.Dynamic_Interrupt_Protection" > >>> found private type > "System.Tasking.Protected_Objects.Protection" > > 7. is begin > 8. null; > 9. end On_1; > 10. > 11. end P1; > 12. > 13. end Parent.Admin; > 13 lines: 2 errors (a) I can only see one error? (b) that is a compiler error (problem with internal representations of intermediate code, I think) (c) what is it doing on the body!! (d) GCC 6 does the same (e) if you say "with Interrupt_Handler => False" it compiles OK, but who knows what it means! Report the error!