comparison gcc/ada/doc/gnat_ugn/about_this_guide.rst @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children 84e7813d76e9
comparison
equal deleted inserted replaced
68:561a7518be6b 111:04ced10e8804
1 .. _About_This_Guide:
2
3 About This Guide
4 ~~~~~~~~~~~~~~~~
5
6 .. only:: PRO
7
8 For ease of exposition, 'GNAT Pro' will be referred to simply as
9 'GNAT' in the remainder of this document.
10
11 This guide describes the use of GNAT,
12 a compiler and software development
13 toolset for the full Ada programming language.
14 It documents the features of the compiler and tools, and explains
15 how to use them to build Ada applications.
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, but you can override with a
20 compiler switch (:ref:`Compiling_Different_Versions_of_Ada`)
21 to explicitly specify the language version.
22 Throughout this manual, references to 'Ada' without a year suffix
23 apply to all Ada 95/2005/2012 versions of the language.
24
25 What This Guide Contains
26 ========================
27
28 This guide contains the following chapters:
29
30 * :ref:`Getting_Started_with_GNAT` describes how to get started compiling
31 and running Ada programs with the GNAT Ada programming environment.
32
33 * :ref:`The_GNAT_Compilation_Model` describes the compilation model used
34 by GNAT.
35
36 * :ref:`Building_Executable_Programs_With_GNAT` describes how to use the
37 main GNAT tools to build executable programs, and it also gives examples of
38 using the GNU make utility with GNAT.
39
40 * :ref:`GNAT_Utility_Programs` explains the various utility programs that
41 are included in the GNAT environment
42
43 * :ref:`GNAT_and_Program_Execution` covers a number of topics related to
44 running, debugging, and tuning the performace of programs developed
45 with GNAT
46
47 Appendices cover several additional topics:
48
49 * :ref:`Platform_Specific_Information` describes the different run-time
50 library implementations and also presents information on how to use
51 GNAT on several specific platforms
52
53 * :ref:`Example_of_Binder_Output_File` shows the source code for the binder
54 output file for a sample program.
55
56 * :ref:`Elaboration_Order_Handling_in_GNAT` describes how GNAT helps
57 you deal with elaboration order issues.
58
59 * :ref:`Inline_Assembler` shows how to use the inline assembly facility
60 in an Ada program.
61
62
63
64 What You Should Know before Reading This Guide
65 ==============================================
66
67 .. index:: Ada 95 Language Reference Manual
68
69 .. index:: Ada 2005 Language Reference Manual
70
71 This guide assumes a basic familiarity with the Ada 95 language, as
72 described in the International Standard ANSI/ISO/IEC-8652:1995, January
73 1995.
74 It does not require knowledge of the features introduced by Ada 2005
75 or Ada 2012.
76 Reference manuals for Ada 95, Ada 2005, and Ada 2012 are included in
77 the GNAT documentation package.
78
79
80 Related Information
81 ===================
82
83 For further information about Ada and related tools, please refer to the
84 following documents:
85
86 * :title:`Ada 95 Reference Manual`, :title:`Ada 2005 Reference Manual`, and
87 :title:`Ada 2012 Reference Manual`, which contain reference
88 material for the several revisions of the Ada language standard.
89
90 * :title:`GNAT Reference_Manual`, which contains all reference material for the GNAT
91 implementation of Ada.
92
93 * :title:`Using the GNAT Programming Studio`, which describes the GPS
94 Integrated Development Environment.
95
96 * :title:`GNAT Programming Studio Tutorial`, which introduces the
97 main GPS features through examples.
98
99 * :title:`Debugging with GDB`,
100 for all details on the use of the GNU source-level debugger.
101
102 * :title:`GNU Emacs Manual`,
103 for full information on the extensible editor and programming
104 environment Emacs.
105
106
107 A Note to Readers of Previous Versions of the Manual
108 ====================================================
109
110 In early 2015 the GNAT manuals were transitioned to the
111 reStructuredText (rst) / Sphinx documentation generator technology.
112 During that process the :title:`GNAT User's Guide` was reorganized
113 so that related topics would be described together in the same chapter
114 or appendix. Here's a summary of the major changes realized in
115 the new document structure.
116
117 * :ref:`The_GNAT_Compilation_Model` has been extended so that it now covers
118 the following material:
119
120 - The ``gnatname``, ``gnatkr``, and ``gnatchop`` tools
121 - :ref:`Configuration_Pragmas`
122 - :ref:`GNAT_and_Libraries`
123 - :ref:`Conditional_Compilation` including :ref:`Preprocessing_with_gnatprep`
124 and :ref:`Integrated_Preprocessing`
125 - :ref:`Generating_Ada_Bindings_for_C_and_C++_headers`
126 - :ref:`Using_GNAT_Files_with_External_Tools`
127
128 * :ref:`Building_Executable_Programs_With_GNAT` is a new chapter consolidating
129 the following content:
130
131 - :ref:`The_GNAT_Make_Program_gnatmake`
132 - :ref:`Compiling_with_GCC`
133 - :ref:`Binding_with_gnatbind`
134 - :ref:`Linking_with_gnatlink`
135 - :ref:`Using_the_GNU_make_Utility`
136
137 * :ref:`GNAT_Utility_Programs` is a new chapter consolidating the information about several
138 GNAT tools:
139
140 .. only:: PRO or GPL
141
142 - :ref:`The_File_Cleanup_Utility_gnatclean`
143 - :ref:`The_GNAT_Library_Browser_gnatls`
144 - :ref:`The_Cross-Referencing_Tools_gnatxref_and_gnatfind`
145 - :ref:`The_Ada_to_HTML_Converter_gnathtml`
146 - :ref:`The_Ada-to-XML_Converter_gnat2xml`
147 - :ref:`The_Coding_Standard_Verifier_gnatcheck`
148 - :ref:`The_GNAT_Metrics_Tool_gnatmetric`
149 - :ref:`The_GNAT_Pretty-Printer_gnatpp`
150 - :ref:`The_Body_Stub_Generator_gnatstub`
151 - :ref:`The_Unit_Test_Generator_gnattest`
152
153 .. only:: FSF
154
155 - :ref:`The_File_Cleanup_Utility_gnatclean`
156 - :ref:`The_GNAT_Library_Browser_gnatls`
157 - :ref:`The_Cross-Referencing_Tools_gnatxref_and_gnatfind`
158 - :ref:`The_Ada_to_HTML_Converter_gnathtml`
159
160 * :ref:`GNAT_and_Program_Execution` is a new chapter consolidating the following:
161
162 - :ref:`Running_and_Debugging_Ada_Programs`
163 - :ref:`Code_Coverage_and_Profiling`
164 - :ref:`Improving_Performance`
165 - :ref:`Overflow Check Handling in GNAT <Overflow_Check_Handling_in_GNAT>`
166 - :ref:`Performing Dimensionality Analysis in GNAT <Performing_Dimensionality_Analysis_in_GNAT>`
167 - :ref:`Stack_Related_Facilities`
168 - :ref:`Memory_Management_Issues`
169
170 * :ref:`Platform_Specific_Information` is a new appendix consolidating the following:
171
172 - :ref:`Run_Time_Libraries`
173 - :ref:`Microsoft_Windows_Topics`
174 - :ref:`Mac_OS_Topics`
175
176 * The *Compatibility and Porting Guide* appendix has been moved to the
177 :title:`GNAT Reference Manual`. It now includes a section
178 *Writing Portable Fixed-Point Declarations* which was previously
179 a separate chapter in the :title:`GNAT User's Guide`.
180
181
182 Conventions
183 ===========
184 .. index:: Conventions, typographical
185
186 .. index:: Typographical conventions
187
188 Following are examples of the typographical and graphic conventions used
189 in this guide:
190
191 * ``Functions``, ``utility program names``, ``standard names``,
192 and ``classes``.
193
194 * ``Option flags``
195
196 * :file:`File names`
197
198 * ``Variables``
199
200 * *Emphasis*
201
202 * [optional information or parameters]
203
204 * Examples are described by text
205
206 ::
207
208 and then shown this way.
209
210 * Commands that are entered by the user are shown as preceded by a prompt string
211 comprising the ``$`` character followed by a space.
212
213 * Full file names are shown with the '/' character
214 as the directory separator; e.g., :file:`parent-dir/subdir/myfile.adb`.
215 If you are using GNAT on a Windows platform, please note that
216 the '\\' character should be used instead.