Mercurial > hg > CbC > CbC_gcc
comparison gcc/ada/doc/gnat_rm/about_this_guide.rst @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
68:561a7518be6b | 111:04ced10e8804 |
---|---|
1 .. _About_This_Guide: | |
2 | |
3 **************** | |
4 About This Guide | |
5 **************** | |
6 | |
7 .. only:: PRO | |
8 | |
9 For ease of exposition, 'GNAT Pro' will be referred to simply as | |
10 'GNAT' in the remainder of this document. | |
11 | |
12 This manual contains useful information in writing programs using the | |
13 GNAT compiler. It includes information on implementation dependent | |
14 characteristics of GNAT, including all the information required by | |
15 Annex M of the Ada language standard. | |
16 | |
17 GNAT implements Ada 95, Ada 2005 and Ada 2012, and it may also be | |
18 invoked in Ada 83 compatibility mode. | |
19 By default, GNAT assumes Ada 2012, | |
20 but you can override with a compiler switch | |
21 to explicitly specify the language version. | |
22 (Please refer to the *GNAT User's Guide* for details on these switches.) | |
23 Throughout this manual, references to 'Ada' without a year suffix | |
24 apply to all the Ada versions of the language. | |
25 | |
26 Ada is designed to be highly portable. | |
27 In general, a program will have the same effect even when compiled by | |
28 different compilers on different platforms. | |
29 However, since Ada is designed to be used in a | |
30 wide variety of applications, it also contains a number of system | |
31 dependent features to be used in interfacing to the external world. | |
32 | |
33 .. index:: Implementation-dependent features | |
34 | |
35 .. index:: Portability | |
36 | |
37 Note: Any program that makes use of implementation-dependent features | |
38 may be non-portable. You should follow good programming practice and | |
39 isolate and clearly document any sections of your program that make use | |
40 of these features in a non-portable manner. | |
41 | |
42 What This Reference Manual Contains | |
43 =================================== | |
44 | |
45 This reference manual contains the following chapters: | |
46 | |
47 * :ref:`Implementation_Defined_Pragmas`, lists GNAT implementation-dependent | |
48 pragmas, which can be used to extend and enhance the functionality of the | |
49 compiler. | |
50 | |
51 * :ref:`Implementation_Defined_Attributes`, lists GNAT | |
52 implementation-dependent attributes, which can be used to extend and | |
53 enhance the functionality of the compiler. | |
54 | |
55 * :ref:`Standard_and_Implementation_Defined_Restrictions`, lists GNAT | |
56 implementation-dependent restrictions, which can be used to extend and | |
57 enhance the functionality of the compiler. | |
58 | |
59 * :ref:`Implementation_Advice`, provides information on generally | |
60 desirable behavior which are not requirements that all compilers must | |
61 follow since it cannot be provided on all systems, or which may be | |
62 undesirable on some systems. | |
63 | |
64 * :ref:`Implementation_Defined_Characteristics`, provides a guide to | |
65 minimizing implementation dependent features. | |
66 | |
67 * :ref:`Intrinsic_Subprograms`, describes the intrinsic subprograms | |
68 implemented by GNAT, and how they can be imported into user | |
69 application programs. | |
70 | |
71 * :ref:`Representation_Clauses_and_Pragmas`, describes in detail the | |
72 way that GNAT represents data, and in particular the exact set | |
73 of representation clauses and pragmas that is accepted. | |
74 | |
75 * :ref:`Standard_Library_Routines`, provides a listing of packages and a | |
76 brief description of the functionality that is provided by Ada's | |
77 extensive set of standard library routines as implemented by GNAT. | |
78 | |
79 * :ref:`The_Implementation_of_Standard_I/O`, details how the GNAT | |
80 implementation of the input-output facilities. | |
81 | |
82 * :ref:`The_GNAT_Library`, is a catalog of packages that complement | |
83 the Ada predefined library. | |
84 | |
85 * :ref:`Interfacing_to_Other_Languages`, describes how programs | |
86 written in Ada using GNAT can be interfaced to other programming | |
87 languages. | |
88 | |
89 * :ref:`Specialized_Needs_Annexes`, describes the GNAT implementation of all | |
90 of the specialized needs annexes. | |
91 | |
92 * :ref:`Implementation_of_Specific_Ada_Features`, discusses issues related | |
93 to GNAT's implementation of machine code insertions, tasking, and several | |
94 other features. | |
95 | |
96 * :ref:`Implementation_of_Ada_2012_Features`, describes the status of the | |
97 GNAT implementation of the Ada 2012 language standard. | |
98 | |
99 * :ref:`Obsolescent_Features` documents implementation dependent features, | |
100 including pragmas and attributes, which are considered obsolescent, since | |
101 there are other preferred ways of achieving the same results. These | |
102 obsolescent forms are retained for backwards compatibility. | |
103 | |
104 * :ref:`Compatibility_and_Porting_Guide` presents some guidelines for | |
105 developing portable Ada code, describes the compatibility issues that | |
106 may arise between GNAT and other Ada compilation systems (including those | |
107 for Ada 83), and shows how GNAT can expedite porting applications | |
108 developed in other Ada environments. | |
109 | |
110 * :ref:`gnu_fdl` contains the license for this document. | |
111 | |
112 .. index:: Ada 95 Language Reference Manual | |
113 | |
114 .. index:: Ada 2005 Language Reference Manual | |
115 | |
116 This reference manual assumes a basic familiarity with the Ada 95 language, as | |
117 described in the | |
118 :title:`International Standard ANSI/ISO/IEC-8652:1995`. | |
119 It does not require knowledge of the new features introduced by Ada 2005 or | |
120 Ada 2012. | |
121 All three reference manuals are included in the GNAT documentation | |
122 package. | |
123 | |
124 Conventions | |
125 =========== | |
126 .. index:: Conventions, typographical | |
127 | |
128 .. index:: Typographical conventions | |
129 | |
130 Following are examples of the typographical and graphic conventions used | |
131 in this guide: | |
132 | |
133 * ``Functions``, ``utility program names``, ``standard names``, | |
134 and ``classes``. | |
135 | |
136 * ``Option flags`` | |
137 | |
138 * :file:`File names` | |
139 | |
140 * ``Variables`` | |
141 | |
142 * *Emphasis* | |
143 | |
144 * [optional information or parameters] | |
145 | |
146 * Examples are described by text | |
147 | |
148 :: | |
149 | |
150 and then shown this way. | |
151 | |
152 * Commands that are entered by the user are shown as preceded by a prompt string | |
153 comprising the ``$`` character followed by a space. | |
154 | |
155 Related Information | |
156 =================== | |
157 | |
158 See the following documents for further information on GNAT: | |
159 | |
160 * :title:`GNAT User's Guide for Native Platforms`, | |
161 which provides information on how to use the | |
162 GNAT development environment. | |
163 | |
164 * :title:`Ada 95 Reference Manual`, the Ada 95 programming language standard. | |
165 | |
166 * :title:`Ada 95 Annotated Reference Manual`, which is an annotated version | |
167 of the Ada 95 standard. The annotations describe | |
168 detailed aspects of the design decision, and in particular contain useful | |
169 sections on Ada 83 compatibility. | |
170 | |
171 * :title:`Ada 2005 Reference Manual`, the Ada 2005 programming language standard. | |
172 | |
173 * :title:`Ada 2005 Annotated Reference Manual`, which is an annotated version | |
174 of the Ada 2005 standard. The annotations describe | |
175 detailed aspects of the design decision. | |
176 | |
177 * :title:`Ada 2012 Reference Manual`, the Ada 2012 programming language standard. | |
178 | |
179 * :title:`DEC Ada, Technical Overview and Comparison on DIGITAL Platforms`, | |
180 which contains specific information on compatibility between GNAT and | |
181 DEC Ada 83 systems. | |
182 | |
183 * :title:`DEC Ada, Language Reference Manual`, part number AA-PYZAB-TK, which | |
184 describes in detail the pragmas and attributes provided by the DEC Ada 83 | |
185 compiler system. |