| .. _Obsolescent_Features: |
| |
| ******************** |
| Obsolescent Features |
| ******************** |
| |
| This chapter describes features that are provided by GNAT, but are |
| considered obsolescent since there are preferred ways of achieving |
| the same effect. These features are provided solely for historical |
| compatibility purposes. |
| |
| .. _pragma_No_Run_Time: |
| |
| pragma No_Run_Time |
| ================== |
| |
| The pragma ``No_Run_Time`` is used to achieve an affect similar |
| to the use of the "Zero Foot Print" configurable run time, but without |
| requiring a specially configured run time. The result of using this |
| pragma, which must be used for all units in a partition, is to restrict |
| the use of any language features requiring run-time support code. The |
| preferred usage is to use an appropriately configured run-time that |
| includes just those features that are to be made accessible. |
| |
| .. _pragma_Ravenscar: |
| |
| pragma Ravenscar |
| ================ |
| |
| The pragma ``Ravenscar`` has exactly the same effect as pragma |
| ``Profile (Ravenscar)``. The latter usage is preferred since it |
| is part of the new Ada 2005 standard. |
| |
| .. _pragma_Restricted_Run_Time: |
| |
| pragma Restricted_Run_Time |
| ========================== |
| |
| The pragma ``Restricted_Run_Time`` has exactly the same effect as |
| pragma ``Profile (Restricted)``. The latter usage is |
| preferred since the Ada 2005 pragma ``Profile`` is intended for |
| this kind of implementation dependent addition. |
| |
| .. _pragma_Task_Info: |
| |
| pragma Task_Info |
| ================ |
| |
| The functionality provided by pragma ``Task_Info`` is now part of the |
| Ada language. The ``CPU`` aspect and the package |
| ``System.Multiprocessors`` offer a less system-dependent way to specify |
| task affinity or to query the number of processors. |
| |
| Syntax |
| |
| .. code-block:: ada |
| |
| pragma Task_Info (EXPRESSION); |
| |
| This pragma appears within a task definition (like pragma |
| ``Priority``) and applies to the task in which it appears. The |
| argument must be of type ``System.Task_Info.Task_Info_Type``. |
| The ``Task_Info`` pragma provides system dependent control over |
| aspects of tasking implementation, for example, the ability to map |
| tasks to specific processors. For details on the facilities available |
| for the version of GNAT that you are using, see the documentation |
| in the spec of package System.Task_Info in the runtime |
| library. |
| |
| .. _package_System_Task_Info: |
| |
| package System.Task_Info (:file:`s-tasinf.ads`) |
| =============================================== |
| |
| This package provides target dependent functionality that is used |
| to support the ``Task_Info`` pragma. The predefined Ada package |
| ``System.Multiprocessors`` and the ``CPU`` aspect now provide a |
| standard replacement for GNAT's ``Task_Info`` functionality. |
| |
| .. raw:: latex |
| |
| \appendix |