Commit 2d9ea47f by Robert Dewar Committed by Arnaud Charlet

types.ads, [...]: Minor reformatting.

2007-09-12  Robert Dewar  <dewar@adacore.com>

	* types.ads, a-charac.ads, freeze.adb: Minor reformatting.

	* a-except.adb, g-hesora.adb, g-speche.adb, lib.adb, lib.ads,
	lib-load.adb, lib-writ.adb, s-assert.adb, s-carun8.adb,
	s-casuti.adb, s-crc32.adb, s-exctab.adb, s-htable.adb, s-imgenu.adb,
	s-mastop.adb, s-memory.adb, s-memory.ads, s-secsta.adb, s-soflin.adb,
	s-sopco3.adb, s-sopco4.adb, s-sopco5.adb, s-stache.adb, s-stalib.adb,
	s-stoele.adb, s-strcom.adb, s-strops.adb, s-traceb.adb, s-traent.adb,
	s-wchcnv.adb, s-wchcon.adb, s-wchjis.adb, s-addope.adb, s-except.adb,
	s-os_lib.adb, s-string.adb, s-utf_32.adb,
	a-chlat1.ads, a-elchha.ads, a-except.ads, g-hesora.ads, g-htable.ads, 
	g-speche.ads, par-prag.adb, restrict.adb, restrict.ads, s-assert.ads, 
	s-carun8.ads, s-casuti.ads, s-crc32.ads, sem_ch11.adb, sem_prag.adb, 
	s-exctab.ads, s-htable.ads, s-imgenu.ads, s-mastop.ads, snames.adb, 
	snames.ads, snames.h, s-purexc.ads, s-secsta.ads, s-soflin.ads, 
	s-sopco3.ads, s-sopco4.ads, s-sopco5.ads, s-stache.ads, s-stalib.ads, 
	s-stoele.ads, s-strcom.ads, s-strops.ads, s-traceb.ads, s-traent.ads, 
	s-unstyp.ads, s-wchcnv.ads, s-wchcon.ads, s-wchjis.ads, s-addope.ads, 
	s-except.ads, s-os_lib.ads, s-string.ads, s-utf_32.ads: Implement
	pragma Compiler_Unit and adds it to relevant library units.

From-SVN: r128426
parent 09528ed9
......@@ -15,5 +15,4 @@
package Ada.Characters is
pragma Pure;
end Ada.Characters;
......@@ -13,6 +13,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package Ada.Characters.Latin_1 is
pragma Pure;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 2003-2006, Free Software Foundation, Inc. --
-- Copyright (C) 2003-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -33,6 +33,10 @@
-- Last chance handler. Unhandled exceptions are passed to this routine
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
procedure Ada.Exceptions.Last_Chance_Handler
(Except : Exception_Occurrence);
pragma Export (C,
......
......@@ -42,6 +42,10 @@
-- 2005 functionality is required. in particular, it is used for building
-- run times on all targets.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
pragma Style_Checks (All_Checks);
-- No subprogram ordering check, due to logical grouping
......
......@@ -50,6 +50,10 @@ pragma Polling (Off);
-- We must turn polling off for this unit, because otherwise we get
-- elaboration circularities with ourself.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with System;
with System.Parameters;
with System.Standard_Library;
......
......@@ -1484,14 +1484,11 @@ package body Freeze is
Inner : Node_Id;
begin
Inner := N;
loop
if Nkind (Inner) = N_Allocator then
return Inner;
elsif Nkind (Inner) = N_Qualified_Expression then
Inner := Expression (Inner);
else
return Empty;
end if;
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1995-2005, AdaCore --
-- Copyright (C) 1995-2007, AdaCore --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body GNAT.Heap_Sort_A is
----------
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1995-2005, AdaCore --
-- Copyright (C) 1995-2007, AdaCore --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -42,6 +42,10 @@
-- worst case and is in place with no additional storage required. See
-- the body for exact details of the algorithm used.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package GNAT.Heap_Sort_A is
pragma Preelaborate;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1995-2005, AdaCore --
-- Copyright (C) 1995-2007, AdaCore --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -43,6 +43,10 @@
-- this facility is accessed from run time routines, but clients should
-- always access the version supplied via GNAT.HTable.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with System.HTable;
package GNAT.HTable is
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1998-2006, AdaCore --
-- Copyright (C) 1998-2007, AdaCore --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body GNAT.Spelling_Checker is
------------------------
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1998-2006, AdaCore --
-- Copyright (C) 1998-2007, AdaCore --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -35,6 +35,10 @@
-- This package provides a utility routine for checking for bad spellings
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package GNAT.Spelling_Checker is
pragma Pure;
......
......@@ -206,24 +206,25 @@ package body Lib.Load is
Unum := Units.Last;
Units.Table (Unum) := (
Cunit => Cunit,
Cunit_Entity => Cunit_Entity,
Dependency_Num => 0,
Dynamic_Elab => False,
Error_Location => Sloc (With_Node),
Expected_Unit => Spec_Name,
Fatal_Error => True,
Generate_Code => False,
Has_RACW => False,
Ident_String => Empty,
Loading => False,
Main_Priority => Default_Main_Priority,
Munit_Index => 0,
Serial_Number => 0,
Source_Index => No_Source_File,
Unit_File_Name => Get_File_Name (Spec_Name, Subunit => False),
Unit_Name => Spec_Name,
Version => 0);
Cunit => Cunit,
Cunit_Entity => Cunit_Entity,
Dependency_Num => 0,
Dynamic_Elab => False,
Error_Location => Sloc (With_Node),
Expected_Unit => Spec_Name,
Fatal_Error => True,
Generate_Code => False,
Has_RACW => False,
Is_Compiler_Unit => False,
Ident_String => Empty,
Loading => False,
Main_Priority => Default_Main_Priority,
Munit_Index => 0,
Serial_Number => 0,
Source_Index => No_Source_File,
Unit_File_Name => Get_File_Name (Spec_Name, Subunit => False),
Unit_Name => Spec_Name,
Version => 0);
Set_Comes_From_Source_Default (Save_CS);
Set_Error_Posted (Cunit_Entity);
......@@ -308,24 +309,25 @@ package body Lib.Load is
end if;
Units.Table (Main_Unit) := (
Cunit => Empty,
Cunit_Entity => Empty,
Dependency_Num => 0,
Dynamic_Elab => False,
Error_Location => No_Location,
Expected_Unit => No_Unit_Name,
Fatal_Error => False,
Generate_Code => False,
Has_RACW => False,
Ident_String => Empty,
Loading => True,
Main_Priority => Default_Main_Priority,
Munit_Index => 0,
Serial_Number => 0,
Source_Index => Main_Source_File,
Unit_File_Name => Fname,
Unit_Name => No_Unit_Name,
Version => Version);
Cunit => Empty,
Cunit_Entity => Empty,
Dependency_Num => 0,
Dynamic_Elab => False,
Error_Location => No_Location,
Expected_Unit => No_Unit_Name,
Fatal_Error => False,
Generate_Code => False,
Has_RACW => False,
Is_Compiler_Unit => False,
Ident_String => Empty,
Loading => True,
Main_Priority => Default_Main_Priority,
Munit_Index => 0,
Serial_Number => 0,
Source_Index => Main_Source_File,
Unit_File_Name => Fname,
Unit_Name => No_Unit_Name,
Version => Version);
end if;
end Load_Main_Source;
......@@ -627,24 +629,25 @@ package body Lib.Load is
if Src_Ind /= No_Source_File then
Units.Table (Unum) := (
Cunit => Empty,
Cunit_Entity => Empty,
Dependency_Num => 0,
Dynamic_Elab => False,
Error_Location => Sloc (Error_Node),
Expected_Unit => Uname_Actual,
Fatal_Error => False,
Generate_Code => False,
Has_RACW => False,
Ident_String => Empty,
Loading => True,
Main_Priority => Default_Main_Priority,
Munit_Index => 0,
Serial_Number => 0,
Source_Index => Src_Ind,
Unit_File_Name => Fname,
Unit_Name => Uname_Actual,
Version => Source_Checksum (Src_Ind));
Cunit => Empty,
Cunit_Entity => Empty,
Dependency_Num => 0,
Dynamic_Elab => False,
Error_Location => Sloc (Error_Node),
Expected_Unit => Uname_Actual,
Fatal_Error => False,
Generate_Code => False,
Has_RACW => False,
Is_Compiler_Unit => False,
Ident_String => Empty,
Loading => True,
Main_Priority => Default_Main_Priority,
Munit_Index => 0,
Serial_Number => 0,
Source_Index => Src_Ind,
Unit_File_Name => Fname,
Unit_Name => Uname_Actual,
Version => Source_Checksum (Src_Ind));
-- Parse the new unit
......
......@@ -69,24 +69,25 @@ package body Lib.Writ is
begin
Units.Increment_Last;
Units.Table (Units.Last) :=
(Unit_File_Name => File_Name (S),
Unit_Name => No_Unit_Name,
Expected_Unit => No_Unit_Name,
Source_Index => S,
Cunit => Empty,
Cunit_Entity => Empty,
Dependency_Num => 0,
Dynamic_Elab => False,
Fatal_Error => False,
Generate_Code => False,
Has_RACW => False,
Ident_String => Empty,
Loading => False,
Main_Priority => -1,
Munit_Index => 0,
Serial_Number => 0,
Version => 0,
Error_Location => No_Location);
(Unit_File_Name => File_Name (S),
Unit_Name => No_Unit_Name,
Expected_Unit => No_Unit_Name,
Source_Index => S,
Cunit => Empty,
Cunit_Entity => Empty,
Dependency_Num => 0,
Dynamic_Elab => False,
Fatal_Error => False,
Generate_Code => False,
Has_RACW => False,
Is_Compiler_Unit => False,
Ident_String => Empty,
Loading => False,
Main_Priority => -1,
Munit_Index => 0,
Serial_Number => 0,
Version => 0,
Error_Location => No_Location);
end Add_Preprocessing_Dependency;
------------------------------
......@@ -122,24 +123,25 @@ package body Lib.Writ is
Units.Increment_Last;
Units.Table (Units.Last) := (
Unit_File_Name => System_Fname,
Unit_Name => System_Uname,
Expected_Unit => System_Uname,
Source_Index => System_Source_File_Index,
Cunit => Empty,
Cunit_Entity => Empty,
Dependency_Num => 0,
Dynamic_Elab => False,
Fatal_Error => False,
Generate_Code => False,
Has_RACW => False,
Ident_String => Empty,
Loading => False,
Main_Priority => -1,
Munit_Index => 0,
Serial_Number => 0,
Version => 0,
Error_Location => No_Location);
Unit_File_Name => System_Fname,
Unit_Name => System_Uname,
Expected_Unit => System_Uname,
Source_Index => System_Source_File_Index,
Cunit => Empty,
Cunit_Entity => Empty,
Dependency_Num => 0,
Dynamic_Elab => False,
Fatal_Error => False,
Generate_Code => False,
Has_RACW => False,
Is_Compiler_Unit => False,
Ident_String => Empty,
Loading => False,
Main_Priority => -1,
Munit_Index => 0,
Serial_Number => 0,
Version => 0,
Error_Location => No_Location);
-- Parse system.ads so that the checksum is set right
-- Style checks are not applied.
......
......@@ -120,6 +120,11 @@ package body Lib is
return Units.Table (U).Has_RACW;
end Has_RACW;
function Is_Compiler_Unit (U : Unit_Number_Type) return Boolean is
begin
return Units.Table (U).Is_Compiler_Unit;
end Is_Compiler_Unit;
function Ident_String (U : Unit_Number_Type) return Node_Id is
begin
return Units.Table (U).Ident_String;
......@@ -195,6 +200,14 @@ package body Lib is
Units.Table (U).Has_RACW := B;
end Set_Has_RACW;
procedure Set_Is_Compiler_Unit
(U : Unit_Number_Type;
B : Boolean := True)
is
begin
Units.Table (U).Is_Compiler_Unit := B;
end Set_Is_Compiler_Unit;
procedure Set_Ident_String (U : Unit_Number_Type; N : Node_Id) is
begin
Units.Table (U).Ident_String := N;
......
......@@ -325,6 +325,10 @@ package Lib is
-- (RACW) object. This is used for controlling generation of the RA
-- attribute in the ali file.
-- Is_Compiler_Unit
-- A Boolean flag, initially set False by default, set to True if a
-- pragma Compiler_Unit appears in the unit.
-- Ident_String
-- N_String_Literal node from a valid pragma Ident that applies to
-- this unit. If no Ident pragma applies to the unit, then Empty.
......@@ -377,6 +381,7 @@ package Lib is
function Generate_Code (U : Unit_Number_Type) return Boolean;
function Ident_String (U : Unit_Number_Type) return Node_Id;
function Has_RACW (U : Unit_Number_Type) return Boolean;
function Is_Compiler_Unit (U : Unit_Number_Type) return Boolean;
function Loading (U : Unit_Number_Type) return Boolean;
function Main_Priority (U : Unit_Number_Type) return Int;
function Munit_Index (U : Unit_Number_Type) return Nat;
......@@ -385,17 +390,18 @@ package Lib is
function Unit_Name (U : Unit_Number_Type) return Unit_Name_Type;
-- Get value of named field from given units table entry
procedure Set_Cunit (U : Unit_Number_Type; N : Node_Id);
procedure Set_Cunit_Entity (U : Unit_Number_Type; E : Entity_Id);
procedure Set_Dynamic_Elab (U : Unit_Number_Type; B : Boolean := True);
procedure Set_Error_Location (U : Unit_Number_Type; W : Source_Ptr);
procedure Set_Fatal_Error (U : Unit_Number_Type; B : Boolean := True);
procedure Set_Generate_Code (U : Unit_Number_Type; B : Boolean := True);
procedure Set_Has_RACW (U : Unit_Number_Type; B : Boolean := True);
procedure Set_Ident_String (U : Unit_Number_Type; N : Node_Id);
procedure Set_Loading (U : Unit_Number_Type; B : Boolean := True);
procedure Set_Main_Priority (U : Unit_Number_Type; P : Int);
procedure Set_Unit_Name (U : Unit_Number_Type; N : Unit_Name_Type);
procedure Set_Cunit (U : Unit_Number_Type; N : Node_Id);
procedure Set_Cunit_Entity (U : Unit_Number_Type; E : Entity_Id);
procedure Set_Dynamic_Elab (U : Unit_Number_Type; B : Boolean := True);
procedure Set_Error_Location (U : Unit_Number_Type; W : Source_Ptr);
procedure Set_Fatal_Error (U : Unit_Number_Type; B : Boolean := True);
procedure Set_Generate_Code (U : Unit_Number_Type; B : Boolean := True);
procedure Set_Has_RACW (U : Unit_Number_Type; B : Boolean := True);
procedure Set_Is_Compiler_Unit (U : Unit_Number_Type; B : Boolean := True);
procedure Set_Ident_String (U : Unit_Number_Type; N : Node_Id);
procedure Set_Loading (U : Unit_Number_Type; B : Boolean := True);
procedure Set_Main_Priority (U : Unit_Number_Type; P : Int);
procedure Set_Unit_Name (U : Unit_Number_Type; N : Unit_Name_Type);
-- Set value of named field for given units table entry. Note that we
-- do not have an entry for each possible field, since some of the fields
-- can only be set by specialized interfaces (defined below).
......@@ -618,6 +624,7 @@ private
pragma Inline (Fatal_Error);
pragma Inline (Generate_Code);
pragma Inline (Has_RACW);
pragma Inline (Is_Compiler_Unit);
pragma Inline (Increment_Serial_Number);
pragma Inline (Loading);
pragma Inline (Main_Priority);
......@@ -651,6 +658,7 @@ private
Fatal_Error : Boolean;
Generate_Code : Boolean;
Has_RACW : Boolean;
Is_Compiler_Unit : Boolean;
Dynamic_Elab : Boolean;
Loading : Boolean;
end record;
......@@ -677,10 +685,11 @@ private
Generate_Code at 53 range 0 .. 7;
Has_RACW at 54 range 0 .. 7;
Dynamic_Elab at 55 range 0 .. 7;
Loading at 56 range 0 .. 31;
Is_Compiler_Unit at 56 range 0 .. 31;
Loading at 60 range 0 .. 31;
end record;
for Unit_Record'Size use 60 * 8;
for Unit_Record'Size use 64 * 8;
-- This ensures that we did not leave out any fields
package Units is new Table.Table (
......
......@@ -1057,6 +1057,7 @@ begin
Pragma_CIL_Constructor |
Pragma_Compile_Time_Error |
Pragma_Compile_Time_Warning |
Pragma_Compiler_Unit |
Pragma_Convention_Identifier |
Pragma_CPP_Class |
Pragma_CPP_Constructor |
......
......@@ -84,6 +84,17 @@ package body Restrict is
end if;
end Abort_Allowed;
-------------------------
-- Check_Compiler_Unit --
-------------------------
procedure Check_Compiler_Unit (N : Node_Id) is
begin
if Is_Compiler_Unit (Get_Source_Unit (N)) then
Error_Msg_N ("use of construct not allowed in compiler", N);
end if;
end Check_Compiler_Unit;
------------------------------------
-- Check_Elaboration_Code_Allowed --
------------------------------------
......
......@@ -171,6 +171,11 @@ package Restrict is
-- For abort to be allowed, either No_Abort_Statements must be False,
-- or Max_Asynchronous_Select_Nesting must be non-zero.
procedure Check_Compiler_Unit (N : Node_Id);
-- If unit N is in a unit that has a pragma Compiler_Unit, then a message
-- is posted on node N noting use of a construct that is not permitted in
-- the compiler.
procedure Check_Restricted_Unit (U : Unit_Name_Type; N : Node_Id);
-- Checks if loading of unit U is prohibited by the setting of some
-- restriction (e.g. No_IO restricts the loading of unit Ada.Text_IO).
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with Ada.Unchecked_Conversion;
package body System.Address_Operations is
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 2004-2006, Free Software Foundation, Inc. --
-- Copyright (C) 2004-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -42,6 +42,10 @@
-- inappropriate use by applications programs). In addition, the logical
-- operations may not be available if type Address is a signed integer.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.Address_Operations is
pragma Pure;
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with Ada.Exceptions;
with System.Exceptions;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2005 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -36,6 +36,10 @@
-- This unit may be used directly from an application program by providing
-- an appropriate WITH, and the interface can be expected to remain stable.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.Assertions is
Assert_Failure : exception;
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with System.Address_Operations; use System.Address_Operations;
with Ada.Unchecked_Conversion;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 2002-2005 Free Software Foundation, Inc. --
-- Copyright (C) 2002-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -34,6 +34,10 @@
-- This package contains functions for runtime comparisons on arrays whose
-- elements are 8-bit discrete type values to be treated as unsigned.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.Compare_Array_Unsigned_8 is
-- Note: although the functions in this package are in a sense Pure, the
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1995-2005 AdaCore --
-- Copyright (C) 1995-2007, AdaCore --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.Case_Util is
--------------
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1995-2005 AdaCore --
-- Copyright (C) 1995-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -39,6 +39,10 @@
-- Note that all the routines in this package are available to the user
-- via GNAT.Case_Util, which imports all the entities from this package.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.Case_Util is
pragma Pure;
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 2001-2002 Free Software Foundation, Inc. --
-- Copyright (C) 2001-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.CRC32 is
Init : constant CRC32 := 16#FFFF_FFFF#; -- Initial value
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 2001 Free Software Foundation, Inc. --
-- Copyright (C) 2001-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -56,6 +56,10 @@
-- "Computation of Cyclic Redundancy Checks via Table Look-Up", Communications
-- of the ACM, Vol. 31 No. 8, pp.1008-1013 Aug. 1988. Sarwate, D.V.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with Interfaces;
package System.CRC32 is
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.Exceptions is
---------------------------
......
......@@ -35,6 +35,10 @@
-- It should be compiled without optimization to let debuggers inspect
-- parameter values reliably from breakpoints on the routines.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with System.Standard_Library;
package System.Exceptions is
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1996-2005 Free Software Foundation, Inc. --
-- Copyright (C) 1996-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with System.HTable;
with System.Soft_Links; use System.Soft_Links;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1996-2006, Free Software Foundation, Inc. --
-- Copyright (C) 1996-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -35,6 +35,10 @@
-- registered exception names, for the implementation of the mapping
-- of names to exceptions (used for exception streams and attributes)
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with System.Standard_Library;
package System.Exception_Table is
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1995-2006, AdaCore --
-- Copyright (C) 1995-2007, AdaCore --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with Ada.Unchecked_Deallocation;
package body System.HTable is
......
......@@ -39,6 +39,10 @@
-- The Static_HTable package provides a more complex interface that allows
-- complete control over allocation.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.HTable is
pragma Preelaborate;
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with Ada.Unchecked_Conversion;
package body System.Img_Enum is
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 2000-2005 Free Software Foundation, Inc. --
-- Copyright (C) 2000-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -36,6 +36,10 @@
-- package System (where it is too early to start building image tables).
-- Special routines exist for the enumeration routines in these packages.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.Img_Enum is
pragma Pure;
......
......@@ -7,7 +7,7 @@
-- B o d y --
-- (Dummy version) --
-- --
-- Copyright (C) 1999-2005 Free Software Foundation, Inc. --
-- Copyright (C) 1999-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -35,6 +35,10 @@
-- This dummy version of System.Machine_State_Operations is used
-- on targets for which zero cost exception handling is not implemented.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.Machine_State_Operations is
-- Turn off warnings since many unused parameters
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
pragma Polling (Off);
-- We must turn polling off for this unit, because otherwise we get
-- elaboration circularities with System.Exception_Tables.
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 2001-2006, Free Software Foundation, Inc. --
-- Copyright (C) 2001-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -43,6 +43,10 @@
-- you can remove the calls to Abort_Defer.all and Abort_Undefer.all from
-- this unit.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with Ada.Exceptions;
with System.Soft_Links;
with System.Parameters;
......
......@@ -42,6 +42,10 @@
-- This unit may be used directly from an application program by providing
-- an appropriate WITH, and the interface can be expected to remain stable.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.Memory is
pragma Elaborate_Body;
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with System.Case_Util;
with System.CRTL;
with System.Soft_Links;
......
......@@ -50,6 +50,10 @@
-- be used by other predefined packages. User access to this package is via
-- a renaming of this package in GNAT.OS_Lib (file g-os_lib.ads).
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with System;
with System.Strings;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 2000-2005, AdaCore --
-- Copyright (C) 2000-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,9 +31,13 @@
-- --
------------------------------------------------------------------------------
-- This package provides an interface for raising predefined exceptions
-- with an exception message. It can be used from Pure units. This unit
-- is for internal use only, it is not generally available to applications.
-- This package provides an interface for raising predefined exceptions with
-- an exception message. It can be used from Pure units. This unit is for
-- internal use only, it is not generally available to applications.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.Pure_Exceptions is
pragma Pure;
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with System.Soft_Links;
with System.Parameters;
with Ada.Unchecked_Conversion;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with System.Storage_Elements;
package System.Secondary_Stack is
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
pragma Polling (Off);
-- We must turn polling off for this unit, because otherwise we get
-- an infinite loop from the code within the Poll routine itself.
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -39,6 +39,10 @@
-- initialized to non-tasking versions, and then if the tasking support is
-- initialized, they are set to the real tasking versions.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with Ada.Exceptions;
with System.Stack_Checking;
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1992-1998, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.String_Ops_Concat_3 is
------------------
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -33,6 +33,10 @@
-- This package contains the function for concatenating three strings
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.String_Ops_Concat_3 is
pragma Pure;
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1992-1998, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.String_Ops_Concat_4 is
------------------
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -33,6 +33,10 @@
-- This package contains the function for concatenating four strings
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.String_Ops_Concat_4 is
pragma Pure;
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1992-1998, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.String_Ops_Concat_5 is
------------------
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -33,6 +33,10 @@
-- This package contains the function for concatenating five strings
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.String_Ops_Concat_5 is
pragma Pure;
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1999-2005 Free Software Foundation, Inc. --
-- Copyright (C) 1999-2007, Free Software Foundation, Inc. --
-- --
-- GNARL is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
-- As noted in the spec, this dummy body is present because otherwise we
-- have bootstrapping path problems (there used to be a real body).
......
......@@ -37,6 +37,10 @@
-- This package defines basic types and objects. Operations related to
-- stack checking can be found in package System.Stack_Checking.Operations.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with System.Storage_Elements;
package System.Stack_Checking is
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1995-2006, Free Software Foundation, Inc. --
-- Copyright (C) 1995-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
-- The purpose of this body is simply to ensure that the two with'ed units
-- are properly included in the link. They are not with'ed from the spec
-- of System.Standard_Library, since this would cause order of elaboration
......
......@@ -46,6 +46,10 @@
-- package and the packages it references are included in all Ada programs,
-- together with the included data.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
pragma Polling (Off);
-- We must turn polling off for this unit, because otherwise we get
-- elaboration circularities with Ada.Exceptions if polling is on.
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with Ada.Unchecked_Conversion;
package body System.Storage_Elements is
......
......@@ -39,6 +39,10 @@
-- extra declarations that can be introduced into System using Extend_System.
-- It is a good idea to avoid use clauses for this package!
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.Storage_Elements is
pragma Pure;
-- Note that we take advantage of the implementation permission to make
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with Ada.Unchecked_Conversion;
package body System.String_Compare is
......@@ -63,8 +67,7 @@ package body System.String_Compare is
(Left : System.Address;
Right : System.Address;
Left_Len : Natural;
Right_Len : Natural)
return Integer
Right_Len : Natural) return Integer
is
Compare_Len : constant Natural := Natural'Min (Left_Len, Right_Len);
......@@ -109,8 +112,7 @@ package body System.String_Compare is
(Left : System.Address;
Right : System.Address;
Left_Len : Natural;
Right_Len : Natural)
return Integer
Right_Len : Natural) return Integer
is
Compare_Len : constant Natural := Natural'Min (Left_Len, Right_Len);
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 2002-2005 Free Software Foundation, Inc. --
-- Copyright (C) 2002-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -33,14 +33,17 @@
-- This package contains functions for runtime comparisons on strings
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.String_Compare is
function Str_Compare
(Left : System.Address;
Right : System.Address;
Left_Len : Natural;
Right_Len : Natural)
return Integer;
Right_Len : Natural) return Integer;
-- Compare the string starting at address Left of length Left_Len
-- with the string starting at address Right of length Right_Len.
-- The comparison is in the normal Ada semantic sense of string
......@@ -52,8 +55,7 @@ package System.String_Compare is
(Left : System.Address;
Right : System.Address;
Left_Len : Natural;
Right_Len : Natural)
return Integer;
Right_Len : Natural) return Integer;
-- Same functionality as Str_Compare but always proceeds by bytes.
-- Used when the caller knows that the operands are unaligned, or
-- short enough that it makes no sense to go by words.
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.Strings is
----------
......
......@@ -37,6 +37,10 @@
-- be used by other predefined packages. User access to this package is via
-- a renaming of this package in GNAT.String (file g-string.ads).
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with Ada.Unchecked_Deallocation;
package System.Strings is
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1992-2005 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.String_Ops is
----------------
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2005 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -34,6 +34,10 @@
-- This package contains functions for runtime operations on strings
-- (other than runtime comparison, found in s-strcom.ads).
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.String_Ops is
pragma Pure;
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1999-2005, Free Software Foundation, Inc. --
-- Copyright (C) 1999-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -36,6 +36,10 @@
-- Note: this unit must be compiled using -fno-optimize-sibling-calls.
-- See comment below in body of Call_Chain for details on the reason.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.Traceback is
------------------
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1999-2005, Free Software Foundation, Inc. --
-- Copyright (C) 1999-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -36,6 +36,10 @@
-- calls in the call chain, up to either the top or a designated
-- number of levels.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
pragma Polling (Off);
-- We must turn polling off for this unit, because otherwise we get
-- elaboration circularities with System.Exception_Tables.
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 2003-2006, Free Software Foundation, Inc. --
-- Copyright (C) 2003-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.Traceback_Entries is
------------
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 2003-2005 Free Software Foundation, Inc. --
-- Copyright (C) 2003-2007, Free Software Foundation, Inc. --
-- --
-- This specification is derived from the Ada Reference Manual for use with --
-- GNAT. The copyright notice above, and the license provisions that follow --
......@@ -40,6 +40,10 @@
-- version of the package, an entry is a mere code location representing the
-- address of a call instruction part of the call-chain.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.Traceback_Entries is
pragma Preelaborate;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -37,6 +37,10 @@
-- also contains some related definitions for other specialized types
-- used by the compiler in connection with packed array types.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.Unsigned_Types is
pragma Pure;
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
pragma Style_Checks (Off);
-- Allow long lines in this unit
......
......@@ -43,6 +43,10 @@
-- the same services. The reason this package is in System is so that it can
-- with'ed by other packages in the Ada and System hierarchies.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.UTF_32 is
type UTF_32 is range 0 .. 16#7FFF_FFFF#;
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,9 +31,9 @@
-- --
------------------------------------------------------------------------------
-- This package contains generic subprograms used for converting between
-- sequences of Character and Wide_Character. All access to wide character
-- sequences is isolated in this unit.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with Interfaces; use Interfaces;
with System.WCh_Con; use System.WCh_Con;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2005, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,9 +31,17 @@
-- --
------------------------------------------------------------------------------
-- This package contains generic subprograms used for converting between
-- sequences of Character and Wide_Character. All access to wide character
-- sequences is isolated in this unit.
-- This unit may be used directly from an application program by providing
-- an appropriate WITH, and the interface can be expected to remain stable.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
with System.WCh_Con;
package System.WCh_Cnv is
......
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.WCh_Con is
----------------------------
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -38,6 +38,10 @@
-- This unit may be used directly from an application program by providing
-- an appropriate WITH, and the interface can be expected to remain stable.
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.WCh_Con is
pragma Pure;
......
......@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -31,6 +31,10 @@
-- --
------------------------------------------------------------------------------
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package body System.WCh_JIS is
type Byte is mod 256;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
......@@ -34,6 +34,10 @@
-- This package contains routines used for converting between internal
-- JIS codes and the two external forms we support (EUC and Shift-JIS)
pragma Warnings (Off);
pragma Compiler_Unit;
pragma Warnings (On);
package System.WCh_JIS is
pragma Pure;
......
......@@ -527,7 +527,10 @@ package body Sem_Ch11 is
Set_Is_Raised (Exception_Name);
end if;
-- Deal with RAISE WITH case
if Present (Expression (N)) then
Check_Compiler_Unit (Expression (N));
Analyze_And_Resolve (Expression (N), Standard_String);
end if;
end if;
......
......@@ -5310,6 +5310,15 @@ package body Sem_Prag is
when Pragma_Compile_Time_Warning =>
Process_Compile_Time_Warning_Or_Error;
-------------------
-- Compiler_Unit --
-------------------
when Pragma_Compiler_Unit =>
GNAT_Pragma;
Check_Arg_Count (0);
Set_Is_Compiler_Unit (Get_Source_Unit (N));
-----------------------------
-- Complete_Representation --
-----------------------------
......@@ -11235,6 +11244,7 @@ package body Sem_Prag is
Pragma_Common_Object => -1,
Pragma_Compile_Time_Error => -1,
Pragma_Compile_Time_Warning => -1,
Pragma_Compiler_Unit => 0,
Pragma_Complete_Representation => 0,
Pragma_Complex_Representation => 0,
Pragma_Component_Alignment => -1,
......
......@@ -183,6 +183,7 @@ package body Snames is
"check_name#" &
"compile_time_error#" &
"compile_time_warning#" &
"compiler_unit#" &
"component_alignment#" &
"convention_identifier#" &
"debug_policy#" &
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment