Mercurial > hg > CbC > CbC_gcc
comparison gcc/ada/restrict.ads @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 84e7813d76e9 |
children |
comparison
equal
deleted
inserted
replaced
131:84e7813d76e9 | 145:1830386684a0 |
---|---|
4 -- -- | 4 -- -- |
5 -- R E S T R I C T -- | 5 -- R E S T R I C T -- |
6 -- -- | 6 -- -- |
7 -- S p e c -- | 7 -- S p e c -- |
8 -- -- | 8 -- -- |
9 -- Copyright (C) 1992-2018, Free Software Foundation, Inc. -- | 9 -- Copyright (C) 1992-2019, Free Software Foundation, Inc. -- |
10 -- -- | 10 -- -- |
11 -- GNAT is free software; you can redistribute it and/or modify it under -- | 11 -- GNAT is free software; you can redistribute it and/or modify it under -- |
12 -- terms of the GNU General Public License as published by the Free Soft- -- | 12 -- terms of the GNU General Public License as published by the Free Soft- -- |
13 -- ware Foundation; either version 3, or (at your option) any later ver- -- | 13 -- ware Foundation; either version 3, or (at your option) any later ver- -- |
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- | 14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- |
305 -- Tests to see if elaboration code is allowed by the current restrictions | 305 -- Tests to see if elaboration code is allowed by the current restrictions |
306 -- settings. This function is called by Gigi when it needs to define an | 306 -- settings. This function is called by Gigi when it needs to define an |
307 -- elaboration routine. If elaboration code is not allowed, an error | 307 -- elaboration routine. If elaboration code is not allowed, an error |
308 -- message is posted on the node given as argument. | 308 -- message is posted on the node given as argument. |
309 | 309 |
310 -- WARNING: There is a matching C declaration of this subprogram in fe.h | |
311 | |
310 procedure Check_SPARK_05_Restriction | 312 procedure Check_SPARK_05_Restriction |
311 (Msg : String; | 313 (Msg : String; |
312 N : Node_Id; | 314 N : Node_Id; |
313 Force : Boolean := False); | 315 Force : Boolean := False); |
314 -- Node N represents a construct not allowed in SPARK_05 mode. If this is | 316 -- Node N represents a construct not allowed in SPARK_05 mode. If this is |
335 -- trampolines, in particular) is allowed by the current restrictions | 337 -- trampolines, in particular) is allowed by the current restrictions |
336 -- settings. This function is called by Gigi when it needs to generate code | 338 -- settings. This function is called by Gigi when it needs to generate code |
337 -- that generates a trampoline. If not allowed, an error message is posted | 339 -- that generates a trampoline. If not allowed, an error message is posted |
338 -- on the node given as argument. | 340 -- on the node given as argument. |
339 | 341 |
342 -- WARNING: There is a matching C declaration of this subprogram in fe.h | |
343 | |
340 procedure Check_No_Implicit_Heap_Alloc (N : Node_Id); | 344 procedure Check_No_Implicit_Heap_Alloc (N : Node_Id); |
341 -- Equivalent to Check_Restriction (No_Implicit_Heap_Allocations, N). | 345 -- Equivalent to Check_Restriction (No_Implicit_Heap_Allocations, N). |
342 -- Provided for easy use by back end, which has to check this restriction. | 346 -- Provided for easy use by back end, which has to check this restriction. |
343 | 347 |
344 procedure Check_No_Implicit_Task_Alloc (N : Node_Id); | 348 -- WARNING: There is a matching C declaration of this subprogram in fe.h |
345 -- Equivalent to Check_Restriction (No_Implicit_Task_Allocations, N). | |
346 -- Provided for easy use by back end, which has to check this restriction. | |
347 | 349 |
348 procedure Check_No_Implicit_Protected_Alloc (N : Node_Id); | 350 procedure Check_No_Implicit_Protected_Alloc (N : Node_Id); |
349 -- Equivalent to: | 351 -- Equivalent to: |
350 -- Check_Restriction (No_Implicit_Protected_Object_Allocations, N) | 352 -- Check_Restriction (No_Implicit_Protected_Object_Allocations, N) |
351 -- Provided for easy use by back end, which has to check this restriction. | 353 -- Provided for easy use by back end, which has to check this restriction. |
354 | |
355 -- WARNING: There is a matching C declaration of this subprogram in fe.h | |
356 | |
357 procedure Check_No_Implicit_Task_Alloc (N : Node_Id); | |
358 -- Equivalent to Check_Restriction (No_Implicit_Task_Allocations, N). | |
359 -- Provided for easy use by back end, which has to check this restriction. | |
360 | |
361 -- WARNING: There is a matching C declaration of this subprogram in fe.h | |
352 | 362 |
353 procedure Check_Obsolescent_2005_Entity (E : Entity_Id; N : Node_Id); | 363 procedure Check_Obsolescent_2005_Entity (E : Entity_Id; N : Node_Id); |
354 -- This routine checks if the entity E is one of the obsolescent entries | 364 -- This routine checks if the entity E is one of the obsolescent entries |
355 -- in Ada.Characters.Handling in Ada 2005 and No_Obsolescent_Features | 365 -- in Ada.Characters.Handling in Ada 2005 and No_Obsolescent_Features |
356 -- restriction is active. If so an appropriate message is given. N is | 366 -- restriction is active. If so an appropriate message is given. N is |
391 -- expand an AT END clean up identifier with no exception handler. True | 401 -- expand an AT END clean up identifier with no exception handler. True |
392 -- will be returned if the configurable run-time is activated, and either | 402 -- will be returned if the configurable run-time is activated, and either |
393 -- of the restrictions No_Exception_Handlers or No_Exception_Propagation is | 403 -- of the restrictions No_Exception_Handlers or No_Exception_Propagation is |
394 -- set. In the latter case, the source may contain handlers but they either | 404 -- set. In the latter case, the source may contain handlers but they either |
395 -- get converted using the local goto transformation or deleted. | 405 -- get converted using the local goto transformation or deleted. |
406 | |
407 -- WARNING: There is a matching C declaration of this subprogram in fe.h | |
396 | 408 |
397 function No_Exception_Propagation_Active return Boolean; | 409 function No_Exception_Propagation_Active return Boolean; |
398 -- Test to see if current restrictions settings specify that no | 410 -- Test to see if current restrictions settings specify that no |
399 -- exception propagation is activated. | 411 -- exception propagation is activated. |
400 | 412 |