https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68481
Bug ID: 68481 Summary: GNAT rejects protected procedure with aspect Interrupt_Handler => True (explicitly) Product: gcc Version: 5.2.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada Assignee: unassigned at gcc dot gnu.org Reporter: georggcc at googlemail dot com Target Milestone: --- The protected procedure declared in P1 makes gcc reject its body, and only if Interrupt_Handler is given the value True explicitly. package L1 is protected P1 is procedure On_1 with Interrupt_Handler => True; end P1; end L1; package Body L1 is protected body P1 is procedure On_1 is begin null; end On_1; end P1; end L1; gcc -c -gnatvwa l1.adb GNAT 5.2.1 20151121 [gcc-5-branch revision 230708] Copyright 1992-2015, Free Software Foundation, Inc. Compiling: l1.adb Source file time stamp: 2015-11-22 09:45:05 Compiled at: 2015-11-22 10:45:16 4. procedure On_1 is | >>> expected type "System.Interrupts.Dynamic_Interrupt_Protection" >>> found private type "System.Tasking.Protected_Objects.Protection" 10 lines: 2 errors $ gcc -v Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/Users/bauhaus/mine5/libexec/gcc/x86_64-apple-darwin13.4.0/5.2.1/lto-wrapper Target: x86_64-apple-darwin13.4.0 Configured with: /Users/bauhaus/src/gcc/configure --prefix=/Users/bauhaus/mine5 --disable-nls --disable-multilib --disable-libstdcxx-pch --enable-languages=c,ada,c++ CC=gcc Thread model: posix gcc version 5.2.1 20151121 [gcc-5-branch revision 230708] (GCC)