PR c++/37276
[official-gcc.git] / gcc / ada / put_alfa.ads
blobaee4ec384dde16256d28d6be3b454566855cc2bc
1 ------------------------------------------------------------------------------
2 -- --
3 -- GNAT COMPILER COMPONENTS --
4 -- --
5 -- P U T _ A L F A --
6 -- --
7 -- S p e c --
8 -- --
9 -- Copyright (C) 2011, Free Software Foundation, Inc. --
10 -- --
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- --
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- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
17 -- for more details. You should have received a copy of the GNU General --
18 -- Public License distributed with GNAT; see file COPYING3. If not, go to --
19 -- http://www.gnu.org/licenses for a complete copy of the license. --
20 -- --
21 -- GNAT was originally developed by the GNAT team at New York University. --
22 -- Extensive contributions were provided by Ada Core Technologies Inc. --
23 -- --
24 ------------------------------------------------------------------------------
26 -- This package contains the function used to read Alfa information from the
27 -- internal tables defined in package Alfa, and output text information for
28 -- the ALI file. The interface allows control over the destination of the
29 -- output, so that this routine can also be used for debugging purposes.
31 with Types; use Types;
33 generic
34 -- The following procedures are used to output text information. The
35 -- destination of the text information is thus under control of the
36 -- particular instantiation. In particular, this procedure is used to
37 -- write output to the ALI file, and also for debugging output.
39 with function Write_Info_Col return Positive is <>;
40 -- Return the column in which the next character will be written
42 with procedure Write_Info_Char (C : Character) is <>;
43 -- Output one character
45 with procedure Write_Info_Initiate (Key : Character) is <>;
46 -- Initiate write of new line to output file, the parameter is the
47 -- keyword character for the line.
49 with procedure Write_Info_Nat (N : Nat) is <>;
50 -- Write image of N to output file with no leading or trailing blanks
52 with procedure Write_Info_Terminate is <>;
53 -- Terminate current info line and output lines built in Info_Buffer
55 procedure Put_Alfa;
56 -- Read information from Alfa tables (Alfa.Alfa_Xref_Table,
57 -- Alfa.Alfa_Scope_Table and Alfa.Alfa_File_Table) and output corresponding
58 -- information in ALI format using the Write_Info procedures.