1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240
|
<HTML>
<HEAD>
<!-- This HTML file has been created by texi2html 1.51
from gnat_ug.texi on 2 July 1999 -->
<TITLE>GNAT User's Guide - Table of Contents</TITLE>
</HEAD>
<BODY>
<H1>GNAT User's Guide</H1>
<H2>GNAT, The GNU Ada 95 Compiler</H2>
<H2>Document revision level Document revision level 1.242 $</H2>
<H2>GNAT Version 3.12p </H2>
<H2>Date: $Date: 1999/06/28 18:09:34 $</H2>
<ADDRESS>Ada Core Technologies, Inc.</ADDRESS>
<P>
<P><HR><P>
<UL>
<LI><A NAME="TOC1" HREF="gnat_ug.html#SEC1">About This Guide</A>
<UL>
<LI><A NAME="TOC2" HREF="gnat_ug.html#SEC2">What This Guide Contains</A>
<LI><A NAME="TOC3" HREF="gnat_ug.html#SEC3">What You Should Know Before Reading This Guide</A>
<LI><A NAME="TOC4" HREF="gnat_ug.html#SEC4">Related Information</A>
<LI><A NAME="TOC5" HREF="gnat_ug.html#SEC5">Conventions</A>
</UL>
<LI><A NAME="TOC6" HREF="gnat_ug.html#SEC6">Getting Started With GNAT</A>
<UL>
<LI><A NAME="TOC7" HREF="gnat_ug.html#SEC7">Running GNAT</A>
<LI><A NAME="TOC8" HREF="gnat_ug.html#SEC8">Running a Simple Ada Program</A>
<LI><A NAME="TOC9" HREF="gnat_ug.html#SEC9">Running a Program With Multiple Units</A>
<LI><A NAME="TOC10" HREF="gnat_ug.html#SEC10">Using the <CODE>gnatmake</CODE> Utility</A>
</UL>
<LI><A NAME="TOC11" HREF="gnat_ug.html#SEC11">The GNAT Compilation Model</A>
<UL>
<LI><A NAME="TOC12" HREF="gnat_ug.html#SEC12">Source Representation</A>
<LI><A NAME="TOC13" HREF="gnat_ug.html#SEC13">Foreign Language Representation</A>
<UL>
<LI><A NAME="TOC14" HREF="gnat_ug.html#SEC14">Latin-1</A>
<LI><A NAME="TOC15" HREF="gnat_ug.html#SEC15">Other 8-Bit Codes</A>
<LI><A NAME="TOC16" HREF="gnat_ug.html#SEC16">Wide Character Encodings</A>
</UL>
<LI><A NAME="TOC17" HREF="gnat_ug.html#SEC17">File Naming Rules</A>
<LI><A NAME="TOC18" HREF="gnat_ug.html#SEC18">Using Other File Names</A>
<LI><A NAME="TOC19" HREF="gnat_ug.html#SEC19">Generating Object Files</A>
<LI><A NAME="TOC20" HREF="gnat_ug.html#SEC20">Source Dependencies</A>
<LI><A NAME="TOC21" HREF="gnat_ug.html#SEC21">The Ada Library Information Files</A>
<LI><A NAME="TOC22" HREF="gnat_ug.html#SEC22">Representation of Time Stamps</A>
<LI><A NAME="TOC23" HREF="gnat_ug.html#SEC23">Binding an Ada Program</A>
<LI><A NAME="TOC24" HREF="gnat_ug.html#SEC24">Mixed Language Programming</A>
<UL>
<LI><A NAME="TOC25" HREF="gnat_ug.html#SEC25">Interfacing to C</A>
<LI><A NAME="TOC26" HREF="gnat_ug.html#SEC26">Calling Conventions</A>
</UL>
<LI><A NAME="TOC27" HREF="gnat_ug.html#SEC27">Building mixed Ada & C++ programs</A>
<UL>
<LI><A NAME="TOC28" HREF="gnat_ug.html#SEC28">Interfacing to C++</A>
<LI><A NAME="TOC29" HREF="gnat_ug.html#SEC29">Linking a mixed C++ & Ada program</A>
<LI><A NAME="TOC30" HREF="gnat_ug.html#SEC30">Adapting the runtime to a new C++ compiler</A>
</UL>
<LI><A NAME="TOC31" HREF="gnat_ug.html#SEC31">Comparison between GNAT and C/C++ Compilation Models</A>
<LI><A NAME="TOC32" HREF="gnat_ug.html#SEC32">Comparison between GNAT and Conventional Ada Library Models</A>
</UL>
<LI><A NAME="TOC33" HREF="gnat_ug.html#SEC33">Compiling Using <CODE>gcc</CODE></A>
<UL>
<LI><A NAME="TOC34" HREF="gnat_ug.html#SEC34">Compiling Programs</A>
<LI><A NAME="TOC35" HREF="gnat_ug.html#SEC35">Switches for <CODE>gcc</CODE></A>
<UL>
<LI><A NAME="TOC36" HREF="gnat_ug.html#SEC36">Output and Error Message Control</A>
<LI><A NAME="TOC37" HREF="gnat_ug.html#SEC37">Debugging and Assertion Control</A>
<LI><A NAME="TOC38" HREF="gnat_ug.html#SEC38">Style Checking</A>
<LI><A NAME="TOC39" HREF="gnat_ug.html#SEC39">Run-time Checks</A>
<LI><A NAME="TOC40" HREF="gnat_ug.html#SEC40">Using <CODE>gcc</CODE> for Syntax Checking</A>
<LI><A NAME="TOC41" HREF="gnat_ug.html#SEC41">Using <CODE>gcc</CODE> for Semantic Checking</A>
<LI><A NAME="TOC42" HREF="gnat_ug.html#SEC42">Compiling Ada 83 Programs</A>
<LI><A NAME="TOC43" HREF="gnat_ug.html#SEC43">Reference Manual Style Checking</A>
<LI><A NAME="TOC44" HREF="gnat_ug.html#SEC44">Character Set Control</A>
<LI><A NAME="TOC45" HREF="gnat_ug.html#SEC45">File Naming Control</A>
<LI><A NAME="TOC46" HREF="gnat_ug.html#SEC46">Subprogram Inlining Control</A>
<LI><A NAME="TOC47" HREF="gnat_ug.html#SEC47">Auxiliary Output Control</A>
<LI><A NAME="TOC48" HREF="gnat_ug.html#SEC48">Debugging Control</A>
</UL>
<LI><A NAME="TOC49" HREF="gnat_ug.html#SEC49">Search Paths and the Run-Time Library (RTL)</A>
<LI><A NAME="TOC50" HREF="gnat_ug.html#SEC50">Order of Compilation Issues</A>
<LI><A NAME="TOC51" HREF="gnat_ug.html#SEC51">Examples</A>
</UL>
<LI><A NAME="TOC52" HREF="gnat_ug.html#SEC52">Binding Using <CODE>gnatbind</CODE></A>
<UL>
<LI><A NAME="TOC53" HREF="gnat_ug.html#SEC53">Running <CODE>gnatbind</CODE></A>
<LI><A NAME="TOC54" HREF="gnat_ug.html#SEC54">Consistency-Checking Modes</A>
<LI><A NAME="TOC55" HREF="gnat_ug.html#SEC55">Binder Error Message Control</A>
<LI><A NAME="TOC56" HREF="gnat_ug.html#SEC56">Elaboration Control</A>
<LI><A NAME="TOC57" HREF="gnat_ug.html#SEC57">Output Control</A>
<LI><A NAME="TOC58" HREF="gnat_ug.html#SEC58">Binding with Non-Ada Main Programs</A>
<LI><A NAME="TOC59" HREF="gnat_ug.html#SEC59">Binding Programs with no Main Subprogram</A>
<LI><A NAME="TOC60" HREF="gnat_ug.html#SEC60">Summary of Binder Switches</A>
<LI><A NAME="TOC61" HREF="gnat_ug.html#SEC61">Command-Line Access</A>
<LI><A NAME="TOC62" HREF="gnat_ug.html#SEC62">Search Paths for <CODE>gnatbind</CODE></A>
<LI><A NAME="TOC63" HREF="gnat_ug.html#SEC63">Examples of <CODE>gnatbind</CODE> Usage</A>
</UL>
<LI><A NAME="TOC64" HREF="gnat_ug.html#SEC64">Linking Using <CODE>gnatlink</CODE></A>
<UL>
<LI><A NAME="TOC65" HREF="gnat_ug.html#SEC65">Running <CODE>gnatlink</CODE></A>
<LI><A NAME="TOC66" HREF="gnat_ug.html#SEC66">Switches for <CODE>gnatlink</CODE></A>
</UL>
<LI><A NAME="TOC67" HREF="gnat_ug.html#SEC67">The GNAT Make Program <CODE>gnatmake</CODE></A>
<UL>
<LI><A NAME="TOC68" HREF="gnat_ug.html#SEC68">Running <CODE>gnatmake</CODE></A>
<LI><A NAME="TOC69" HREF="gnat_ug.html#SEC69">Switches for <CODE>gnatmake</CODE></A>
<LI><A NAME="TOC70" HREF="gnat_ug.html#SEC70">Mode switches for <CODE>gnatmake</CODE></A>
<LI><A NAME="TOC71" HREF="gnat_ug.html#SEC71">Notes on the Command Line</A>
<LI><A NAME="TOC72" HREF="gnat_ug.html#SEC72">How <CODE>gnatmake</CODE> Works</A>
<LI><A NAME="TOC73" HREF="gnat_ug.html#SEC73">Examples of <CODE>gnatmake</CODE> Usage</A>
<LI><A NAME="TOC74" HREF="gnat_ug.html#SEC74">Gnatmake in makefiles</A>
</UL>
<LI><A NAME="TOC75" HREF="gnat_ug.html#SEC75">Renaming Files Using <CODE>gnatchop</CODE></A>
<UL>
<LI><A NAME="TOC76" HREF="gnat_ug.html#SEC76">Handling Files with Multiple Units</A>
<LI><A NAME="TOC77" HREF="gnat_ug.html#SEC77">Operating gnatchop in Compilation Mode</A>
<LI><A NAME="TOC78" HREF="gnat_ug.html#SEC78">Command Line for <CODE>gnatchop</CODE></A>
<LI><A NAME="TOC79" HREF="gnat_ug.html#SEC79">Switches for <CODE>gnatchop</CODE></A>
<LI><A NAME="TOC80" HREF="gnat_ug.html#SEC80">Examples of <CODE>gnatchop</CODE> Usage</A>
</UL>
<LI><A NAME="TOC81" HREF="gnat_ug.html#SEC81">Configuration Pragmas</A>
<UL>
<LI><A NAME="TOC82" HREF="gnat_ug.html#SEC82">Handling of Configuration Pragmas</A>
<LI><A NAME="TOC83" HREF="gnat_ug.html#SEC83">The Configuration Pragmas file</A>
</UL>
<LI><A NAME="TOC84" HREF="gnat_ug.html#SEC84">Elaboration Order Handling in GNAT</A>
<UL>
<LI><A NAME="TOC85" HREF="gnat_ug.html#SEC85">Elaboration Code in Ada 95</A>
<LI><A NAME="TOC86" HREF="gnat_ug.html#SEC86">Checking the Elaboration Order in Ada 95</A>
<LI><A NAME="TOC87" HREF="gnat_ug.html#SEC87">Controlling the Elaboration Order in Ada 95</A>
<LI><A NAME="TOC88" HREF="gnat_ug.html#SEC88">Controlling Elaboration in GNAT - Internal Calls</A>
<LI><A NAME="TOC89" HREF="gnat_ug.html#SEC89">Controlling Elaboration in GNAT - External Calls</A>
<LI><A NAME="TOC90" HREF="gnat_ug.html#SEC90">Default Behavior in GNAT - Ensuring Safety</A>
<LI><A NAME="TOC91" HREF="gnat_ug.html#SEC91">What to do if the Default Elaboration Behavior Fails</A>
<LI><A NAME="TOC92" HREF="gnat_ug.html#SEC92">Elaboration for Access-to-Subprogram Values</A>
<LI><A NAME="TOC93" HREF="gnat_ug.html#SEC93">Summary of Procedures for Elaboration Control</A>
</UL>
<LI><A NAME="TOC94" HREF="gnat_ug.html#SEC94">The cross-referencing tools <CODE>gnatxref</CODE> and <CODE>gnatfind</CODE></A>
<UL>
<LI><A NAME="TOC95" HREF="gnat_ug.html#SEC95">Gnatxref switches</A>
<LI><A NAME="TOC96" HREF="gnat_ug.html#SEC96">Gnatfind switches</A>
<LI><A NAME="TOC97" HREF="gnat_ug.html#SEC97">Project files</A>
<LI><A NAME="TOC98" HREF="gnat_ug.html#SEC98">Regular expressions in gnatfind and gnatxref</A>
<LI><A NAME="TOC99" HREF="gnat_ug.html#SEC99">Examples of <CODE>gnatxref</CODE> usage</A>
<UL>
<LI><A NAME="TOC100" HREF="gnat_ug.html#SEC100">General usage</A>
<LI><A NAME="TOC101" HREF="gnat_ug.html#SEC101">Using gnatxref with vi</A>
</UL>
<LI><A NAME="TOC102" HREF="gnat_ug.html#SEC102">Examples of <CODE>gnatfind</CODE> usage</A>
</UL>
<LI><A NAME="TOC103" HREF="gnat_ug.html#SEC103">File Name Krunching Using <CODE>gnatkr</CODE></A>
<UL>
<LI><A NAME="TOC104" HREF="gnat_ug.html#SEC104">About <CODE>gnatkr</CODE></A>
<LI><A NAME="TOC105" HREF="gnat_ug.html#SEC105">Using <CODE>gnatkr</CODE></A>
<LI><A NAME="TOC106" HREF="gnat_ug.html#SEC106">Krunching Method</A>
<LI><A NAME="TOC107" HREF="gnat_ug.html#SEC107">Examples of <CODE>gnatkr</CODE> Usage</A>
</UL>
<LI><A NAME="TOC108" HREF="gnat_ug.html#SEC108">Preprocessing Using <CODE>gnatprep</CODE></A>
<UL>
<LI><A NAME="TOC109" HREF="gnat_ug.html#SEC109">Using <CODE>gnatprep</CODE></A>
<LI><A NAME="TOC110" HREF="gnat_ug.html#SEC110">Switches for <CODE>gnatprep</CODE></A>
<LI><A NAME="TOC111" HREF="gnat_ug.html#SEC111">Form of definitions file</A>
<LI><A NAME="TOC112" HREF="gnat_ug.html#SEC112">Form of input text for <CODE>gnatprep</CODE></A>
</UL>
<LI><A NAME="TOC113" HREF="gnat_ug.html#SEC113">The GNAT library browser <CODE>gnatls</CODE></A>
<UL>
<LI><A NAME="TOC114" HREF="gnat_ug.html#SEC114">Running <CODE>gnatls</CODE></A>
<LI><A NAME="TOC115" HREF="gnat_ug.html#SEC115">Switches for <CODE>gnatls</CODE></A>
<LI><A NAME="TOC116" HREF="gnat_ug.html#SEC116">Example of <CODE>gnatls</CODE> Usage</A>
</UL>
<LI><A NAME="TOC117" HREF="gnat_ug.html#SEC117">Rebuilding the GNAT Library</A>
<LI><A NAME="TOC118" HREF="gnat_ug.html#SEC118">Finding memory problems with <CODE>gnatmem</CODE></A>
<UL>
<LI><A NAME="TOC119" HREF="gnat_ug.html#SEC119">Running <CODE>gnatmem</CODE></A>
<LI><A NAME="TOC120" HREF="gnat_ug.html#SEC120">Switches for <CODE>gnatmem</CODE></A>
<LI><A NAME="TOC121" HREF="gnat_ug.html#SEC121">Example of <CODE>gnatmem</CODE> Usage</A>
<LI><A NAME="TOC122" HREF="gnat_ug.html#SEC122">Implementation note</A>
</UL>
<LI><A NAME="TOC123" HREF="gnat_ug.html#SEC123">ASIS-Based Tools</A>
<UL>
<LI><A NAME="TOC124" HREF="gnat_ug.html#SEC124">The ASIS Implementation for GNAT (ASIS-for-GNAT)</A>
<LI><A NAME="TOC125" HREF="gnat_ug.html#SEC125">Tree Files</A>
</UL>
<LI><A NAME="TOC126" HREF="gnat_ug.html#SEC126">Creating Sample Bodies Using <CODE>gnatstub</CODE></A>
<UL>
<LI><A NAME="TOC127" HREF="gnat_ug.html#SEC127">Running <CODE>gnatstub</CODE></A>
<LI><A NAME="TOC128" HREF="gnat_ug.html#SEC128">Switches for <CODE>gnatstub</CODE></A>
</UL>
<LI><A NAME="TOC129" HREF="gnat_ug.html#SEC129">Minimizing Executables for Ada Programs Using <CODE>gnatelim</CODE></A>
<UL>
<LI><A NAME="TOC130" HREF="gnat_ug.html#SEC130">About <CODE>gnatelim</CODE></A>
<LI><A NAME="TOC131" HREF="gnat_ug.html#SEC131"><CODE>Eliminate</CODE> pragma</A>
<LI><A NAME="TOC132" HREF="gnat_ug.html#SEC132">Preparing Tree and Bind Files for <CODE>gnatelim</CODE></A>
<LI><A NAME="TOC133" HREF="gnat_ug.html#SEC133">Running <CODE>gnatelim</CODE></A>
<LI><A NAME="TOC134" HREF="gnat_ug.html#SEC134">Correcting the List of Eliminate Pragmas</A>
<LI><A NAME="TOC135" HREF="gnat_ug.html#SEC135">Making your Executables smaller</A>
<LI><A NAME="TOC136" HREF="gnat_ug.html#SEC136">Summary of the gnatelim Usage Cycle</A>
</UL>
<LI><A NAME="TOC137" HREF="gnat_ug.html#SEC137">Other Utility Programs</A>
<UL>
<LI><A NAME="TOC138" HREF="gnat_ug.html#SEC138">Using Other Utility Programs With GNAT</A>
<LI><A NAME="TOC139" HREF="gnat_ug.html#SEC139">The <CODE>gnatpsys</CODE> Utility Program</A>
<LI><A NAME="TOC140" HREF="gnat_ug.html#SEC140">The <CODE>gnatpsta</CODE> Utility Program</A>
<LI><A NAME="TOC141" HREF="gnat_ug.html#SEC141">The External Symbol Naming Scheme of GNAT</A>
<LI><A NAME="TOC142" HREF="gnat_ug.html#SEC142">Ada Mode for <CODE>emacs</CODE></A>
<LI><A NAME="TOC143" HREF="gnat_ug.html#SEC143">General features:</A>
<LI><A NAME="TOC144" HREF="gnat_ug.html#SEC144">Ada mode features that help understanding code:</A>
<LI><A NAME="TOC145" HREF="gnat_ug.html#SEC145">Emacs support for writing Ada code:</A>
<LI><A NAME="TOC146" HREF="gnat_ug.html#SEC146">Converting Ada files to html using gnathtml</A>
<LI><A NAME="TOC147" HREF="gnat_ug.html#SEC147">Installing gnathtml</A>
</UL>
<LI><A NAME="TOC148" HREF="gnat_ug.html#SEC148">Running and Debugging Ada Programs</A>
<UL>
<LI><A NAME="TOC149" HREF="gnat_ug.html#SEC149">The GNAT Debugger GDB</A>
<LI><A NAME="TOC150" HREF="gnat_ug.html#SEC150">Running GDB</A>
<LI><A NAME="TOC151" HREF="gnat_ug.html#SEC151">Introduction to GDB Commands</A>
<LI><A NAME="TOC152" HREF="gnat_ug.html#SEC152">Using Ada Expressions</A>
<LI><A NAME="TOC153" HREF="gnat_ug.html#SEC153">Calling User-Defined Subprograms</A>
<LI><A NAME="TOC154" HREF="gnat_ug.html#SEC154">Breaking on Ada Exceptions</A>
<LI><A NAME="TOC155" HREF="gnat_ug.html#SEC155">Ada Tasks</A>
<LI><A NAME="TOC156" HREF="gnat_ug.html#SEC156">Debugging Generic Units</A>
<LI><A NAME="TOC157" HREF="gnat_ug.html#SEC157">GNAT Abnormal Termination</A>
<LI><A NAME="TOC158" HREF="gnat_ug.html#SEC158">Naming Conventions for GNAT Source Files</A>
<LI><A NAME="TOC159" HREF="gnat_ug.html#SEC159">Getting Internal Debugging Information</A>
</UL>
<LI><A NAME="TOC160" HREF="gnat_ug.html#SEC160">Performance Considerations</A>
<UL>
<LI><A NAME="TOC161" HREF="gnat_ug.html#SEC161">Controlling Run-time Checks</A>
<LI><A NAME="TOC162" HREF="gnat_ug.html#SEC162">Optimization Levels</A>
<LI><A NAME="TOC163" HREF="gnat_ug.html#SEC163">Inlining of Subprograms</A>
</UL>
<LI><A NAME="TOC164" HREF="gnat_ug.html#SEC164">Index</A>
</UL>
<P><HR><P>
This document was generated on 2 July 1999 using the
<A HREF="http://wwwcn.cern.ch/dci/texi2html/">texi2html</A>
translator version 1.51.</P>
</BODY>
</HTML>
|