File: errors.ads

package info (click to toggle)
polyorb 2.6.0~20090423-10
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 25,004 kB
  • ctags: 240
  • sloc: ada: 236,464; makefile: 2,281; sh: 1,373; cpp: 957; java: 500; ansic: 198; python: 191; perl: 23; exp: 6
file content (68 lines) | stat: -rw-r--r-- 3,501 bytes parent folder | download
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
------------------------------------------------------------------------------
--                                                                          --
--                           POLYORB COMPONENTS                             --
--                                                                          --
--                               E R R O R S                                --
--                                                                          --
--                                 S p e c                                  --
--                                                                          --
--         Copyright (C) 2004-2008, Free Software Foundation, Inc.          --
--                                                                          --
-- PolyORB is free software; you  can  redistribute  it and/or modify it    --
-- under terms of the  GNU General Public License as published by the  Free --
-- Software Foundation;  either version 2,  or (at your option)  any  later --
-- version. PolyORB is distributed  in the hope that it will be  useful,    --
-- but WITHOUT ANY WARRANTY;  without even the implied warranty of MERCHAN- --
-- TABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public --
-- License  for more details.  You should have received  a copy of the GNU  --
-- General Public License distributed with PolyORB; see file COPYING. If    --
-- not, write to the Free Software Foundation, 51 Franklin Street, Fifth    --
-- Floor, Boston, MA 02111-1301, USA.                                       --
--                                                                          --
--                                                                          --
--                  PolyORB is maintained by AdaCore                        --
--                     (email: sales@adacore.com)                           --
--                                                                          --
------------------------------------------------------------------------------

with Locations; use Locations;
with Types;     use Types;

package Errors is

   Not_Yet_Implemented : exception;
   --  Raised when code is not ready yet

   Internal_Error : exception;
   --  Raised when idlac reaches an internal inconsistent state

   Fatal_Error : exception;
   --  Raised when idlac has detected an external inconsistent state

   procedure Display_Error (S : String);
   procedure DE (S : String) renames Display_Error;
   --  Display a warning or error message S. The following special characters
   --  may appear in the message:
   --    % (Percent):      insert Error_Name (N)
   --    # (Hash):         insert Error_Name (N) within quotes
   --    ! (Exclamantion): insert Error_Loc (L)
   --    $ (Dollar):       insert Error_Int (I)
   --    ? (Question):     make message a warning
   --    \ (Backslash):    make message a continuation (does not count toward
   --                      errors or warnings counter)
   --  Where N, L and I are indices incremented after each insertion character
   --  (note that Error_Loc (1) is always inserted ahead of the message, and
   --  L starts at 2 as far as explicit '!' insertions are concerned).

   procedure Initialize;

   Error_Name : array (1 .. 2) of Name_Id;
   Error_Loc  : array (1 .. 2) of Location;
   Error_Int  : array (1 .. 2) of Int;

   --  Count of errors and warnings displayed so far

   N_Errors   : Int := 0;
   N_Warnings : Int := 0;

end Errors;