1------------------------------------------------------------------------------
2--                                                                          --
3--                         GNAT COMPILER COMPONENTS                         --
4--                                                                          --
5--                              A D A B K E N D                             --
6--                                                                          --
7--                                 S p e c                                  --
8--                                                                          --
9--          Copyright (C) 1992-2012, 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------------------------------------------------------------------------------
25
26--  Generic package implementing the common parts of back_end.adb for back ends
27--  written in Ada, thereby reducing code duplication.
28
29with Types;
30
31generic
32   Product_Name    : String;
33   Copyright_Years : String;
34
35   with procedure Driver (Root : Types.Node_Id);
36   --  Main driver procedure for back end
37
38   with function Is_Back_End_Switch (Switch : String) return Boolean;
39   --  Back-end specific function to determine validity of switches
40
41package Adabkend is
42
43   procedure Call_Back_End;
44   --  Call back end, i.e. make call to the Driver passing the root
45   --  node for this compilation unit.
46
47   procedure Scan_Compiler_Arguments;
48   --  Acquires command-line parameters passed to the compiler and processes
49   --  them. Calls Scan_Front_End_Switches for any front-end switches
50   --  encountered. See spec of Back_End for more details.
51
52end Adabkend;
53