1
-- These rules enforce some of the restriction of the Ravenscar profile
2
-- It is expected that new versions of AdaControl will allow more of the
3
-- Ravenscar profile to be checked.
5
-- Each rule's label matches the corresponding pragma or restriction
6
-- from the Ravenscar profile
7
-- Those that are currently not checked appear as comments.
13
--Task_Dispatching_Policy
15
Detect_Blocking: check Potentially_Blocking_Operations;
21
No_Abort_Statement : check Statements (Abort);
22
No_Dynamic_Attachment : check Entities (Ada.Interrupts.Is_Reserved,
23
Ada.Interrupts.Is_Attached,
24
Ada.Interrupts.Current_Handler,
25
Ada.Interrupts.Attach_Handler,
26
Ada.Interrupts.Exchange_Handler,
27
Ada.Interrupts.Detach_Handler,
28
Ada.Interrupts.Reference);
29
No_Dynamic_Priorities : check entities (all 'priority, Ada.Dynamic_Priorities);
30
--No_Implicit_Heap_Allocations
31
--No_Local_Protected_Objects
32
--No_Local_Timing_Events
33
No_Protected_Type_Allocators : check Declarations (access_protected_type);
34
No_Relative_Delay : check Statements (delay);
35
No_Requeue_Statements : check Statements (requeue);
36
No_Select_Statements : check Statements (selective_accept,
37
conditional_entry_call,
40
No_Specific_Termination_Handlers : Check Entities (Ada.Task_Termination.Set_Specific_Handler,
41
Ada.Task_Termination.Specific_Handler);
42
No_Task_Allocators : check declarations (access_task_type);
44
No_Task_Termination : check Terminating_Tasks;
46
--Max_Entry_Queue_Length
47
--Max_Protected_Entries
48
Max_Task_Entries : check Declarations (Task_Entry);
49
No_Dependence : check Entities (Ada.Asynchronous_Task_Control,
51
Ada.Execution_Time.Group_Budget,
52
Ada.Execution_Time.Timers,