Commit 009186e0 by Arnaud Charlet

s-stoele.ads, [...]: Minor reformatting...

	* s-stoele.ads, s-stopoo.ads, s-stratt.ads, s-strops.ads, s-unstyp.ads,
	s-valboo.ads, s-valcha.ads, s-valdec.ads, s-valenu.ads, s-valint.ads,
	s-vallld.ads, s-vallli.ads, s-valllu.ads, s-valrea.ads, s-valuns.ads,
	s-valuti.ads, s-valwch.ads, s-veboop.ads, s-vector.ads, s-vercon.ads,
	s-wchcnv.ads, s-wchcon.ads, s-wchjis.ads, s-wchstw.ads, s-wchwts.ads,
	s-widboo.ads, s-widcha.ads, s-widenu.ads, s-widlli.ads, s-widllu.ads,
	s-widwch.ads, s-wwdcha.ads, s-wwdenu.ads, s-wwdwch.ads, system.ads,
	table.ads, types.ads, system-vms_64.ads, s-crtl-vms64.ads,
	s-addope.ads, system-darwin-ppc.ads, system-vxworks-x86.ads,
	s-vxwork-x86.ads, system-linux-ppc.ads, i-vxwork-x86.ads,
	a-numaux-darwin.ads, a-crbtgo.ads, a-crbtgk.ads, a-crbltr.ads,
	a-coprnu.ads, a-convec.ads, a-contai.ads, a-coinve.ads, a-cohata.ads,
	a-cohama.ads, a-cihama.ads, a-cidlli.ads, a-cdlili.ads,
	a-numaux-libc-x86.ads, a-numaux-vxworks.ads, system-linux-ia64.ads,
	system-freebsd-x86.ads, system-unixware.ads, system-lynxos-ppc.ads,
	system-lynxos-x86.ads, system-linux-x86_64.ads, system-tru64.ads,
	s-vxwork-alpha.ads, system-aix.ads, system-vxworks-sparcv9.ads,
	system-solaris-x86.ads, system-irix-o32.ads, system-irix-n32.ads,
	s-parame-hpux.ads, system-hpux.ads, system-vxworks-m68k.ads,
	s-vxwork-m68k.ads, system-linux-x86.ads, system-vxworks-mips.ads,
	s-vxwork-mips.ads, system-os2.ads, system-interix.ads,
	s-vxwork-ppc.ads, system-solaris-sparc.ads, s-vxwork-sparcv9.ads,
	system-solaris-sparcv9.ads, s-parame-vms.ads, system-vms.ads,
	s-osinte-mingw.ads, system-mingw.ads, s-parame-vms-restrict.ads,
	system-vms-zcx.ads, s-parame-ae653.ads, system-vxworks-ppc.ads,
	s-parame-vxworks.ads, system-vxworks-alpha.ads, interfac-vms.ads,
	a-numaux-x86.ads, a-astaco.ads, a-chahan.ads, a-charac.ads,
	a-chlat1.ads, a-chlat9.ads, a-colire.adb, a-colire.ads, a-comlin.ads,
	a-cwila1.ads, a-cwila9.ads, ada.ads, a-decima.ads, a-exextr.adb,
	a-filico.ads, a-finali.ads, a-interr.ads, a-ioexce.ads, a-dynpri.ads,
	a-ngcefu.ads, a-ngcefu.adb, a-ngcoty.adb, a-ngcoty.ads, a-ngelfu.ads,
	a-nudira.adb, a-nudira.ads, a-nuflra.adb, a-numaux.ads, a-numeri.ads,
	a-reatim.adb, a-stmaco.ads, a-storio.ads, a-strbou.ads, a-stream.ads,
	a-strfix.ads, a-string.ads, a-strmap.ads, a-strsea.ads, a-strsup.ads,
	a-strunb.ads, a-stunau.ads, a-stwibo.ads, a-stwifi.ads, a-stwima.ads,
	a-stwise.ads, a-stwisu.ads, a-stwiun.ads, a-swmwco.ads, a-textio.ads,
	csets.ads, debug.ads, dec.ads, g-curexc.ads, get_targ.ads,
	g-except.ads, system-linux-hppa.ads, a-chacon.ads, a-widcha.ads,
	a-zchara.ads, system-hpux-ia64.ads, a-ciorma.ads, a-coorma.ads,
	a-ciormu.ads, a-coormu.ads, a-rbtgso.ads, a-chzla1.ads, a-chzla9.ads,
	a-stzbou.ads, a-stzfix.ads, a-stzmap.ads, a-stzsea.ads, a-stzsup.ads,
	a-stzunb.ads, a-swunau.ads, a-szunau.ads, gnat.ads, g-regpat.ads,
	g-speche.ads, g-spitbo.ads, g-table.ads, g-tasloc.ads, g-trasym.ads,
	i-c.ads, i-cpoint.ads, i-cpp.ads, i-cstrin.ads, i-fortra.ads,
	interfac.ads, i-os2err.ads, i-os2lib.ads, i-os2syn.ads, i-os2thr.ads,
	i-vxwork.ads, output.ads, s-arit64.ads, s-atacco.ads, s-boarop.ads,
	s-casuti.ads, s-crtl.ads, s-exctab.ads, s-exnint.ads, s-exnllf.ads,
	s-exnlli.ads, s-expint.ads, s-explli.ads, s-expllu.ads, s-expmod.ads,
	s-expuns.ads, s-fatflt.ads, s-fatgen.ads, s-fatlfl.ads, s-fatllf.ads,
	s-fatsfl.ads, s-finimp.ads, s-finroo.ads, s-fore.ads, s-geveop.ads,
	s-htable.ads, s-imgbiu.ads, s-imgboo.ads, s-imgcha.ads, s-imgdec.ads,
	s-imgenu.ads, s-imgint.ads, s-imgllb.ads, s-imglld.ads, s-imglli.ads,
	s-imgllu.ads, s-imgllw.ads, s-imgrea.ads, s-imguns.ads, s-imgwch.ads,
	s-imgwiu.ads, s-io.ads, s-maccod.ads, s-mantis.ads, s-memcop.ads,
	s-pack03.ads, s-pack05.ads, s-pack06.ads, s-pack07.ads, s-pack09.ads,
	s-pack10.ads, s-pack11.ads, s-pack12.ads, s-pack13.ads, s-pack14.ads,
	s-pack15.ads, s-pack17.ads, s-pack18.ads, s-pack19.ads, s-pack20.ads,
	s-pack21.ads, s-pack22.ads, s-pack23.ads, s-pack24.ads, s-pack25.ads,
	s-pack26.ads, s-pack27.ads, s-pack28.ads, s-pack29.ads, s-pack30.ads,
	s-pack31.ads, s-pack33.ads, s-pack34.ads, s-pack35.ads, s-pack36.ads,
	s-pack37.ads, s-pack38.ads, s-pack39.ads, s-pack40.ads, s-pack41.ads,
	s-pack42.ads, s-pack43.ads, s-pack44.ads, s-pack45.ads, s-pack46.ads,
	s-pack47.ads, s-pack48.ads, s-pack49.ads, s-pack50.ads, s-pack51.ads,
	s-pack52.ads, s-pack53.ads, s-pack54.ads, s-pack55.ads, s-pack56.ads,
	s-pack57.ads, s-pack58.ads, s-pack59.ads, s-pack60.ads, s-pack61.ads,
	s-pack62.ads, s-pack63.ads, s-parame.ads, s-pooglo.ads, s-pooloc.ads,
	s-poosiz.ads, s-powtab.ads, s-purexc.ads, s-sopco3.ads, s-sopco4.ads,
	s-sopco5.ads: Minor reformatting: reindent pragma Pure/Preelaborate
	and always use the no parameter form for consistency.

	* gnat-style.texi: Document rules about Preelaborate/Pure pragmas.

From-SVN: r103855
parent dfbe160a
......@@ -27,8 +27,8 @@
with Ada.Task_Identification;
package Ada.Asynchronous_Task_Control is
pragma Preelaborate_05 (Asynchronous_Task_Control);
-- In accordance with Ada 2005 AI-362
pragma Preelaborate_05;
-- In accordance with Ada 2005 AI-362
pragma Unimplemented_Unit;
......
......@@ -43,7 +43,7 @@ generic
return Boolean is <>;
package Ada.Containers.Doubly_Linked_Lists is
pragma Preelaborate (Doubly_Linked_Lists);
pragma Preelaborate;
type List is tagged private;
......
......@@ -36,7 +36,7 @@
------------------------------------------------------------------------------
package Ada.Characters.Conversions is
pragma Pure (Conversions);
pragma Pure;
function Is_Character (Item : Wide_Character) return Boolean;
function Is_String (Item : Wide_String) return Boolean;
......
......@@ -36,9 +36,9 @@
------------------------------------------------------------------------------
package Ada.Characters.Handling is
pragma Preelaborate (Handling);
pragma Pure_05 (Handling);
-- In accordance with Ada 2005 AI-362
pragma Preelaborate;
pragma Pure_05;
-- In accordance with Ada 2005 AI-362
----------------------------------------
-- Character Classification Functions --
......
......@@ -14,6 +14,6 @@
------------------------------------------------------------------------------
package Ada.Characters is
pragma Pure (Characters);
pragma Pure;
end Ada.Characters;
......@@ -14,7 +14,7 @@
------------------------------------------------------------------------------
package Ada.Characters.Latin_1 is
pragma Pure (Latin_1);
pragma Pure;
------------------------
-- Control Characters --
......
......@@ -36,11 +36,11 @@
-- --
------------------------------------------------------------------------------
-- This package provides definitions for Latin-9 (ISO-8859-9) analogous to
-- This package provides definitions for Latin-9 (ISO-8859-15) analogous to
-- those defined in the standard package Ada.Characters.Latin_1 for Latin-1.
package Ada.Characters.Latin_9 is
pragma Pure (Latin_9);
pragma Pure;
------------------------
-- Control Characters --
......
......@@ -37,7 +37,7 @@
-- is in accordance with the implementation permission in RM (A.3.3(27)).
package Ada.Characters.Wide_Wide_Latin_1 is
pragma Pure (Wide_Wide_Latin_1);
pragma Pure;
------------------------
-- Control Characters --
......
......@@ -37,7 +37,7 @@
-- is in accordance with the implementation permission in RM (A.3.3(27)).
package Ada.Characters.Wide_Wide_Latin_9 is
pragma Pure (Wide_Wide_Latin_9);
pragma Pure;
------------------------
-- Control Characters --
......
......@@ -38,14 +38,13 @@ with Ada.Finalization;
with Ada.Streams;
generic
type Element_Type (<>) is private;
with function "=" (Left, Right : Element_Type)
return Boolean is <>;
package Ada.Containers.Indefinite_Doubly_Linked_Lists is
pragma Preelaborate (Indefinite_Doubly_Linked_Lists);
pragma Preelaborate;
type List is tagged private;
......
......@@ -47,7 +47,7 @@ generic
with function "=" (Left, Right : Element_Type) return Boolean is <>;
package Ada.Containers.Indefinite_Hashed_Maps is
pragma Preelaborate (Indefinite_Hashed_Maps);
pragma Preelaborate;
type Map is tagged private;
type Cursor is private;
......
......@@ -39,7 +39,6 @@ with Ada.Finalization;
with Ada.Streams;
generic
type Key_Type (<>) is private;
type Element_Type (<>) is private;
......@@ -49,7 +48,7 @@ generic
with function "=" (Left, Right : Element_Type) return Boolean is <>;
package Ada.Containers.Indefinite_Ordered_Maps is
pragma Preelaborate (Indefinite_Ordered_Maps);
pragma Preelaborate;
type Map is tagged private;
......
......@@ -45,7 +45,7 @@ generic
with function "=" (Left, Right : Element_Type) return Boolean is <>;
package Ada.Containers.Indefinite_Ordered_Multisets is
pragma Preelaborate (Indefinite_Ordered_Multisets);
pragma Preelaborate;
type Set is tagged private;
......
......@@ -49,7 +49,7 @@ generic
with function "=" (Left, Right : Element_Type) return Boolean is <>;
package Ada.Containers.Hashed_Maps is
pragma Preelaborate (Hashed_Maps);
pragma Preelaborate;
type Map is tagged private;
......
......@@ -34,7 +34,7 @@
------------------------------------------------------------------------------
package Ada.Containers.Hash_Tables is
pragma Preelaborate;
pragma Preelaborate;
generic
type Node_Type (<>) is limited private;
......
......@@ -44,7 +44,7 @@ generic
with function "=" (Left, Right : Element_Type) return Boolean is <>;
package Ada.Containers.Indefinite_Vectors is
pragma Preelaborate (Indefinite_Vectors);
pragma Preelaborate;
subtype Extended_Index is Index_Type'Base
range Index_Type'First - 1 ..
......
......@@ -38,7 +38,7 @@ package body Ada.Command_Line.Remove is
-----------------------
procedure Initialize;
-- Initialize the Remove_Count and Remove_Args variables.
-- Initialize the Remove_Count and Remove_Args variables
----------------
-- Initialize --
......
......@@ -41,7 +41,7 @@
-- argument, Argument_Count will be 2, and Argument (2) will return C.
package Ada.Command_Line.Remove is
pragma Preelaborate (Remove);
pragma Preelaborate;
procedure Remove_Argument (Number : in Positive);
-- Removes the argument identified by Number, which must be in the
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2002 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2005 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 --
......@@ -36,7 +36,7 @@
------------------------------------------------------------------------------
package Ada.Command_Line is
pragma Preelaborate (Command_Line);
pragma Preelaborate;
function Argument_Count return Natural;
-- If the external execution environment supports passing arguments to a
......
......@@ -14,7 +14,7 @@
------------------------------------------------------------------------------
package Ada.Containers is
pragma Pure (Containers);
pragma Pure;
type Hash_Type is mod 2**32;
type Count_Type is range 0 .. 2**31 - 1;
......
......@@ -42,7 +42,7 @@ generic
with function "=" (Left, Right : Element_Type) return Boolean is <>;
package Ada.Containers.Vectors is
pragma Preelaborate (Vectors);
pragma Preelaborate;
subtype Extended_Index is Index_Type'Base
range Index_Type'First - 1 ..
......
......@@ -47,7 +47,7 @@ generic
with function "=" (Left, Right : Element_Type) return Boolean is <>;
package Ada.Containers.Ordered_Maps is
pragma Preelaborate (Ordered_Maps);
pragma Preelaborate;
type Map is tagged private;
......
......@@ -44,7 +44,7 @@ generic
with function "=" (Left, Right : Element_Type) return Boolean is <>;
package Ada.Containers.Ordered_Multisets is
pragma Preelaborate (Ordered_Multisets);
pragma Preelaborate;
type Set is tagged private;
......
......@@ -14,7 +14,7 @@
------------------------------------------------------------------------------
package Ada.Containers.Prime_Numbers is
pragma Pure (Prime_Numbers);
pragma Pure;
type Primes_Type is array (Positive range <>) of Hash_Type;
......
......@@ -34,7 +34,7 @@
------------------------------------------------------------------------------
package Ada.Containers.Red_Black_Trees is
pragma Pure (Red_Black_Trees);
pragma Pure;
type Color_Type is (Red, Black);
......
......@@ -32,7 +32,7 @@ generic
R : Node_Access) return Boolean;
package Ada.Containers.Red_Black_Trees.Generic_Keys is
pragma Pure (Generic_Keys);
pragma Pure;
generic
with function New_Node return Node_Access;
......
......@@ -50,7 +50,7 @@ generic
with procedure Set_Color (Node : Node_Access; Color : Color_Type) is <>;
package Ada.Containers.Red_Black_Trees.Generic_Operations is
pragma Pure;
pragma Pure;
function Min (Node : Node_Access) return Node_Access;
......
......@@ -37,7 +37,7 @@
-- is in accordance with the implementation permission in RM (A.3.3(27)).
package Ada.Characters.Wide_Latin_1 is
pragma Pure (Wide_Latin_1);
pragma Pure;
------------------------
-- Control Characters --
......
......@@ -37,7 +37,7 @@
-- is in accordance with the implementation permission in RM (A.3.3(27)).
package Ada.Characters.Wide_Latin_9 is
pragma Pure (Wide_Latin_9);
pragma Pure;
------------------------
-- Control Characters --
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-1997 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2005 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 --
......@@ -36,7 +36,7 @@
------------------------------------------------------------------------------
package Ada.Decimal is
pragma Pure (Decimal);
pragma Pure;
-- The compiler makes a number of assumptions based on the following five
-- constants (e.g. there is an assumption that decimal values can always
......
......@@ -17,8 +17,8 @@ with System;
with Ada.Task_Identification;
package Ada.Dynamic_Priorities is
pragma Preelaborate_05 (Dynamic_Priorities);
-- In accordance with Ada 2005 AI-362
pragma Preelaborate_05;
-- In accordance with Ada 2005 AI-362
procedure Set_Priority
(Priority : System.Any_Priority;
......
......@@ -85,7 +85,7 @@ package body Exception_Traces is
procedure Unhandled_Exception;
pragma Export (C, Unhandled_Exception, "__gnat_unhandled_exception");
-- Hook for GDB to support "break exception unhandled".
-- Hook for GDB to support "break exception unhandled"
-- For "break exception", GDB uses __gnat_raise_nodefer_with_msg, which
-- is not in this section because it fullfills other purposes than a mere
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-1997, 2004 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2005 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- --
......@@ -32,8 +32,9 @@
------------------------------------------------------------------------------
with System.Finalization_Root;
package Ada.Finalization.List_Controller is
pragma Elaborate_Body (List_Controller);
pragma Elaborate_Body;
package SFR renames System.Finalization_Root;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-1997 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2005 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 --
......@@ -38,7 +38,7 @@
with System.Finalization_Root;
package Ada.Finalization is
pragma Preelaborate (Finalization);
pragma Preelaborate;
type Controlled is abstract tagged private;
......
......@@ -36,7 +36,7 @@
------------------------------------------------------------------------------
with System.Interrupts;
-- used for Ada_Interrupt_ID.
-- used for Ada_Interrupt_ID
package Ada.Interrupts is
......
......@@ -14,7 +14,7 @@
------------------------------------------------------------------------------
package Ada.IO_Exceptions is
pragma Pure (IO_Exceptions);
pragma Pure;
Status_Error : exception;
Mode_Error : exception;
......
......@@ -305,7 +305,7 @@ package body Ada.Numerics.Generic_Complex_Elementary_Functions is
Result : Complex;
begin
-- For very small argument, sin (x) = x.
-- For very small argument, sin (x) = x
if abs Re (X) < Square_Root_Epsilon and then
abs Im (X) < Square_Root_Epsilon
......@@ -642,7 +642,7 @@ package body Ada.Numerics.Generic_Complex_Elementary_Functions is
end if;
end if;
if Im (X) < 0.0 then -- halve angle, Sqrt of magnitude
if Im (X) < 0.0 then -- halve angle, Sqrt of magnitude
R_Y := -R_Y;
end if;
return Compose_From_Cartesian (R_X, R_Y);
......@@ -650,7 +650,7 @@ package body Ada.Numerics.Generic_Complex_Elementary_Functions is
exception
when Constraint_Error =>
-- Rescale and try again.
-- Rescale and try again
R := Modulus (Compose_From_Cartesian (Re (X / 4.0), Im (X / 4.0)));
R_X := 2.0 * Sqrt (0.5 * R + 0.5 * Re (X / 4.0));
......
......@@ -19,7 +19,7 @@ generic
use Complex_Types;
package Ada.Numerics.Generic_Complex_Elementary_Functions is
pragma Pure (Ada.Numerics.Generic_Complex_Elementary_Functions);
pragma Pure;
function Sqrt (X : Complex) return Complex;
......
......@@ -51,7 +51,7 @@ package body Ada.Numerics.Generic_Complex_Types is
X := Left.Re * Right.Re - Left.Im * Right.Im;
Y := Left.Re * Right.Im + Left.Im * Right.Re;
-- If either component overflows, try to scale.
-- If either component overflows, try to scale
if abs (X) > R'Last then
X := R'(4.0) * (R'(Left.Re / 2.0) * R'(Right.Re / 2.0)
......@@ -626,7 +626,7 @@ package body Ada.Numerics.Generic_Complex_Types is
elsif Im2 = 0.0 then
return abs (X.Re);
-- in all other cases, the naive computation will do.
-- In all other cases, the naive computation will do
else
return R (Sqrt (Double (Re2 + Im2)));
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-1997 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2005 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 --
......@@ -39,8 +39,7 @@ generic
type Real is digits <>;
package Ada.Numerics.Generic_Complex_Types is
pragma Pure (Generic_Complex_Types);
pragma Pure;
type Complex is record
Re, Im : Real'Base;
......
......@@ -17,7 +17,7 @@ generic
type Float_Type is digits <>;
package Ada.Numerics.Generic_Elementary_Functions is
pragma Pure (Generic_Elementary_Functions);
pragma Pure;
function Sqrt (X : Float_Type'Base) return Float_Type'Base;
function Log (X : Float_Type'Base) return Float_Type'Base;
......
......@@ -261,7 +261,7 @@ package body Ada.Numerics.Discrete_Random is
Outs.FP := Flt (Outs.P);
Outs.Scl := (RstL - RstF + 1.0) / (Flt (Outs.P) * Flt (Outs.Q));
-- Now do *some* sanity checks.
-- Now do *some* sanity checks
if Outs.Q < 31
or else Outs.X1 not in 2 .. Outs.P - 1
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2003 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2005 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 --
......@@ -35,14 +35,13 @@
-- --
------------------------------------------------------------------------------
-- Note: the implementation used in this package was contributed by
-- Robert Eachus. It is based on the work of L. Blum, M. Blum, and
-- M. Shub, SIAM Journal of Computing, Vol 15. No 2, May 1986. The
-- particular choices for P and Q chosen here guarantee a period of
-- 562,085,314,430,582 (about 2**49), and the generated sequence has
-- excellent randomness properties. For further details, see the
-- paper "Fast Generation of Trustworthy Random Numbers", by Robert
-- Eachus, which describes both the algorithm and the efficient
-- Note: the implementation used in this package was contributed by Robert
-- Eachus. It is based on the work of L. Blum, M. Blum, and M. Shub, SIAM
-- Journal of Computing, Vol 15. No 2, May 1986. The particular choices for P
-- and Q chosen here guarantee a period of 562,085,314,430,582 (about 2**49),
-- and the generated sequence has excellent randomness properties. For further
-- details, see the paper "Fast Generation of Trustworthy Random Numbers", by
-- Robert Eachus, which describes both the algorithm and the efficient
-- implementation approach used here.
with Interfaces;
......@@ -52,16 +51,16 @@ generic
package Ada.Numerics.Discrete_Random is
-- The algorithm used here is reliable from a required statistical point
-- of view only up to 48 bits. We try to behave reasonably in the case
-- of larger types, but we can't guarantee the required properties.
-- So generate a warning for these (slightly) dubious cases.
-- The algorithm used here is reliable from a required statistical point of
-- view only up to 48 bits. We try to behave reasonably in the case of
-- larger types, but we can't guarantee the required properties. So
-- generate a warning for these (slightly) dubious cases.
pragma Compile_Time_Warning
(Result_Subtype'Size > 48,
"statistical properties not guaranteed for size '> 48");
-- Basic facilities.
-- Basic facilities
type Generator is limited private;
......@@ -70,7 +69,7 @@ package Ada.Numerics.Discrete_Random is
procedure Reset (Gen : Generator);
procedure Reset (Gen : Generator; Initiator : Integer);
-- Advanced facilities.
-- Advanced facilities
type State is private;
......
......@@ -164,7 +164,7 @@ package body Ada.Numerics.Float_Random is
X1 := 2 + Int (Initiator) mod (K1 - 3);
X2 := 2 + Int (Initiator) mod (K2 - 3);
-- Eliminate effects of small Initiators.
-- Eliminate effects of small initiators
for J in 1 .. 5 loop
X1 := Square_Mod_N (X1, K1);
......@@ -299,7 +299,7 @@ package body Ada.Numerics.Float_Random is
Outs.X := Euclid (Outs.P, Outs.Q);
Outs.Scl := 1.0 / (Flt (Outs.P) * Flt (Outs.Q));
-- Now do *some* sanity checks.
-- Now do *some* sanity checks
if Outs.Q < 31 or else Outs.P < 31
or else Outs.X1 not in 2 .. Outs.P - 1
......
......@@ -41,7 +41,7 @@
-- routines that take 80-bit arguments).
package Ada.Numerics.Aux is
pragma Pure (Aux);
pragma Pure;
pragma Linker_Options ("-lm");
......
......@@ -44,7 +44,7 @@
-- double (see file a-numaux.ads).
package Ada.Numerics.Aux is
pragma Pure (Aux);
pragma Pure;
pragma Linker_Options ("-lm");
......
......@@ -44,7 +44,7 @@
-- long double (see file 4onumaux.ads).
package Ada.Numerics.Aux is
pragma Pure (Aux);
pragma Pure;
-- This version omits the pragma linker_options ("-lm") since there is
-- no libm.a library for VxWorks.
......
......@@ -42,7 +42,7 @@
-- routines directly.
package Ada.Numerics.Aux is
pragma Pure (Aux);
pragma Pure;
type Double is new Long_Long_Float;
......
......@@ -46,7 +46,7 @@
-- routines that take 80-bit arguments).
package Ada.Numerics.Aux is
pragma Pure (Aux);
pragma Pure;
pragma Linker_Options ("-lm");
......
......@@ -14,7 +14,7 @@
------------------------------------------------------------------------------
package Ada.Numerics is
pragma Pure (Numerics);
pragma Pure;
Argument_Error : exception;
......
......@@ -37,7 +37,7 @@ generic
with procedure Free (X : in out Node_Access);
package Ada.Containers.Red_Black_Trees.Generic_Set_Operations is
pragma Pure (Generic_Set_Operations);
pragma Pure;
procedure Union (Target : in out Tree_Type; Source : Tree_Type);
......
......@@ -198,7 +198,7 @@ package body Ada.Real_Time is
T_Val := abs (T);
end if;
-- Extract the integer part of T, truncating towards zero.
-- Extract the integer part of T, truncating towards zero
if T_Val < 0.5 then
SC := 0;
......
......@@ -38,9 +38,9 @@
with Ada.Characters.Latin_1;
package Ada.Strings.Maps.Constants is
pragma Preelaborate (Constants);
pragma Pure_05 (Constants);
-- In accordance with Ada 2005 AI-362
pragma Preelaborate;
pragma Pure_05;
-- In accordance with Ada 2005 AI-362
Control_Set : constant Character_Set;
Graphic_Set : constant Character_Set;
......
......@@ -20,7 +20,7 @@ generic
type Element_Type is private;
package Ada.Storage_IO is
pragma Preelaborate (Storage_IO);
pragma Preelaborate;
Buffer_Size : constant System.Storage_Elements.Storage_Count :=
System.Storage_Elements.Storage_Count
......
......@@ -39,7 +39,7 @@ with Ada.Strings.Maps;
with Ada.Strings.Superbounded;
package Ada.Strings.Bounded is
pragma Preelaborate (Bounded);
pragma Preelaborate;
generic
Max : Positive;
......
......@@ -36,7 +36,7 @@
------------------------------------------------------------------------------
package Ada.Streams is
pragma Pure (Streams);
pragma Pure;
type Root_Stream_Type is abstract tagged limited private;
......
......@@ -16,7 +16,7 @@
with Ada.Strings.Maps;
package Ada.Strings.Fixed is
pragma Preelaborate (Fixed);
pragma Preelaborate;
--------------------------------------------------------------
-- Copy Procedure for Strings of Possibly Different Lengths --
......
......@@ -14,7 +14,7 @@
------------------------------------------------------------------------------
package Ada.Strings is
pragma Pure (Strings);
pragma Pure;
Space : constant Character := ' ';
Wide_Space : constant Wide_Character := ' ';
......
......@@ -38,9 +38,9 @@
with Ada.Characters.Latin_1;
package Ada.Strings.Maps is
pragma Preelaborate (Maps);
pragma Pure_05 (Maps);
-- In accordance with Ada 2005 AI-362
pragma Preelaborate;
pragma Pure_05;
-- In accordance with Ada 2005 AI-362
--------------------------------
-- Character Set Declarations --
......
......@@ -41,7 +41,7 @@
with Ada.Strings.Maps;
private package Ada.Strings.Search is
pragma Preelaborate (Search);
pragma Preelaborate;
function Index
(Source : String;
......
......@@ -41,7 +41,7 @@
with Ada.Strings.Maps;
package Ada.Strings.Superbounded is
pragma Preelaborate (Superbounded);
pragma Preelaborate;
type Super_String (Max_Length : Positive) is record
Current_Length : Natural := 0;
......
......@@ -39,7 +39,7 @@ with Ada.Strings.Maps;
with Ada.Finalization;
package Ada.Strings.Unbounded is
pragma Preelaborate (Unbounded);
pragma Preelaborate;
type Unbounded_String is private;
......
......@@ -37,7 +37,7 @@
-- utilities (such as GNAT.SPITBOL.Patterns).
package Ada.Strings.Unbounded.Aux is
pragma Preelaborate (Aux);
pragma Preelaborate;
procedure Get_String
(U : Unbounded_String;
......
......@@ -39,7 +39,7 @@ with Ada.Strings.Wide_Maps;
with Ada.Strings.Wide_Superbounded;
package Ada.Strings.Wide_Bounded is
pragma Preelaborate (Wide_Bounded);
pragma Preelaborate;
generic
Max : Positive;
......
......@@ -16,7 +16,7 @@
with Ada.Strings.Wide_Maps;
package Ada.Strings.Wide_Fixed is
pragma Preelaborate (Wide_Fixed);
pragma Preelaborate;
-------------------------------------------------------------------
-- Copy Procedure for Wide_Strings of Possibly Different Lengths --
......
......@@ -38,7 +38,7 @@
with Ada.Finalization;
package Ada.Strings.Wide_Maps is
pragma Preelaborate (Wide_Maps);
pragma Preelaborate;
-------------------------------------
-- Wide Character Set Declarations --
......
......@@ -41,7 +41,7 @@
with Ada.Strings.Wide_Maps;
private package Ada.Strings.Wide_Search is
pragma Preelaborate (Wide_Search);
pragma Preelaborate;
function Index
(Source : Wide_String;
......
......@@ -42,7 +42,7 @@
with Ada.Strings.Wide_Maps;
package Ada.Strings.Wide_Superbounded is
pragma Preelaborate (Wide_Superbounded);
pragma Preelaborate;
Wide_NUL : constant Wide_Character := Wide_Character'Val (0);
......
......@@ -39,7 +39,8 @@ with Ada.Strings.Wide_Maps;
with Ada.Finalization;
package Ada.Strings.Wide_Unbounded is
pragma Preelaborate (Wide_Unbounded);
pragma Preelaborate;
type Unbounded_Wide_String is private;
Null_Unbounded_Wide_String : constant Unbounded_Wide_String;
......
......@@ -39,7 +39,7 @@ with Ada.Strings.Wide_Wide_Maps;
with Ada.Strings.Wide_Wide_Superbounded;
package Ada.Strings.Wide_Wide_Bounded is
pragma Preelaborate (Wide_Wide_Bounded);
pragma Preelaborate;
generic
Max : Positive;
......
......@@ -16,7 +16,7 @@
with Ada.Strings.Wide_Wide_Maps;
package Ada.Strings.Wide_Wide_Fixed is
pragma Preelaborate (Wide_Wide_Fixed);
pragma Preelaborate;
------------------------------------------------------------------------
-- Copy Procedure for Wide_Wide_Strings of Possibly Different Lengths --
......
......@@ -38,7 +38,7 @@
with Ada.Finalization;
package Ada.Strings.Wide_Wide_Maps is
pragma Preelaborate (Wide_Wide_Maps);
pragma Preelaborate;
------------------------------------------
-- Wide_Wide_Character Set Declarations --
......
......@@ -42,7 +42,7 @@
with Ada.Strings.Wide_Wide_Maps;
private package Ada.Strings.Wide_Wide_Search is
pragma Preelaborate (Wide_Wide_Search);
pragma Preelaborate;
function Index
(Source : Wide_Wide_String;
......
......@@ -42,7 +42,7 @@
with Ada.Strings.Wide_Wide_Maps;
package Ada.Strings.Wide_Wide_Superbounded is
pragma Preelaborate (Wide_Wide_Superbounded);
pragma Preelaborate;
Wide_Wide_NUL : constant Wide_Wide_Character :=
Wide_Wide_Character'Val (0);
......
......@@ -39,7 +39,8 @@ with Ada.Strings.Wide_Wide_Maps;
with Ada.Finalization;
package Ada.Strings.Wide_Wide_Unbounded is
pragma Preelaborate (Wide_Wide_Unbounded);
pragma Preelaborate;
type Unbounded_Wide_Wide_String is private;
Null_Unbounded_Wide_Wide_String : constant Unbounded_Wide_Wide_String;
......
......@@ -38,7 +38,7 @@
with Ada.Characters.Wide_Latin_1;
package Ada.Strings.Wide_Maps.Wide_Constants is
pragma Preelaborate (Wide_Constants);
pragma Preelaborate;
Control_Set : constant Wide_Maps.Wide_Character_Set;
Graphic_Set : constant Wide_Maps.Wide_Character_Set;
......
......@@ -37,7 +37,7 @@
-- utilities.
package Ada.Strings.Wide_Unbounded.Aux is
pragma Preelaborate (Aux);
pragma Preelaborate;
procedure Get_Wide_String
(U : Unbounded_Wide_String;
......
......@@ -37,7 +37,7 @@
-- other layered utilities.
package Ada.Strings.Wide_Wide_Unbounded.Aux is
pragma Preelaborate (Aux);
pragma Preelaborate;
procedure Get_Wide_Wide_String
(U : Unbounded_Wide_Wide_String;
......
......@@ -47,7 +47,7 @@ with System;
with System.File_Control_Block;
package Ada.Text_IO is
pragma Elaborate_Body (Text_IO);
pragma Elaborate_Body;
type File_Type is limited private;
type File_Mode is (In_File, Out_File, Append_File);
......
......@@ -17,5 +17,5 @@
-- available in Ada 95 mode, since it deals only with wide characters.
package Ada.Wide_Characters is
pragma Pure (Wide_Characters);
pragma Pure;
end Ada.Wide_Characters;
......@@ -14,5 +14,5 @@
------------------------------------------------------------------------------
package Ada.Wide_Wide_Characters is
pragma Pure (Wide_Wide_Characters);
pragma Pure;
end Ada.Wide_Wide_Characters;
......@@ -14,6 +14,6 @@
------------------------------------------------------------------------------
package Ada is
pragma Pure (Ada);
pragma Pure;
end Ada;
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2004 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2005 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- --
......@@ -32,7 +32,7 @@
------------------------------------------------------------------------------
package Csets is
pragma Elaborate_Body (Csets);
pragma Elaborate_Body;
-- This package contains character tables for the various character
-- sets that are supported for source representation. Character and
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2003 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2005 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,13 +31,13 @@
-- --
------------------------------------------------------------------------------
package Debug is
pragma Preelaborate (Debug);
-- This package contains global flags used to control the inclusion
-- of debugging code in various phases of the compiler. Some of these
-- flags are also used by the binder and gnatmake.
package Debug is
pragma Preelaborate;
-------------------------
-- Dynamic Debug Flags --
-------------------------
......
......@@ -36,5 +36,5 @@
-- the bind. It is also a convenient parent for all DEC IO child packages.
package DEC is
pragma Pure (DEC);
pragma Pure;
end DEC;
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1996-2004 Ada Core Technologies, Inc. --
-- Copyright (C) 1996-2005 Ada Core Technologies, 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- --
......@@ -44,7 +44,7 @@
-- from an exception handler.
package GNAT.Current_Exception is
pragma Pure (Current_Exception);
pragma Pure;
-----------------
-- Subprograms --
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 2000-2002 Ada Core Technologies, Inc. --
-- Copyright (C) 2000-2005 Ada Core Technologies, 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,7 +43,7 @@
-- package allows for raising the standard predefined exceptions at least.
package GNAT.Exceptions is
pragma Pure (Exceptions);
pragma Pure;
type Exception_Type is limited null record;
-- Type used to specify which exception to raise.
......
......@@ -7,7 +7,7 @@
-- S p e c --
-- --
-- Copyright (C) 1986 by University of Toronto. --
-- Copyright (C) 1996-2005 Ada Core Technologies, Inc. --
-- Copyright (C) 1996-2005, 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- --
......@@ -68,7 +68,7 @@
-- extensions that provide full (type 0) computational capabilities.
package GNAT.Regpat is
pragma Preelaborate (Regpat);
pragma Preelaborate;
-- The grammar is the following:
......@@ -219,7 +219,7 @@ pragma Preelaborate (Regpat);
-- Several versions of the Match subprogram are provided, with different
-- parameters and return results.
-- See the description under each of these subprograms.
-- See the description under each of these subprograms
-- Here is a short example showing how to get the substring matched by
-- the first parenthesis pair.
......@@ -576,7 +576,7 @@ pragma Preelaborate (Regpat);
Data : String;
Data_First : Integer := -1;
Data_Last : Positive := Positive'Last) return Boolean;
-- Return True if Data matches using the given pattern matcher.
-- Return True if Data matches using the given pattern matcher
pragma Inline (Match);
-- All except the last one below
......@@ -590,7 +590,7 @@ pragma Preelaborate (Regpat);
-- Match Data using the given pattern matcher and store result in Matches.
-- The expression matches if Matches (0) /= No_Match.
--
-- At most Matches'Length parenthesis are returned.
-- At most Matches'Length parenthesis are returned
-----------
-- Debug --
......@@ -615,26 +615,24 @@ private
Program_First : constant := 1;
-- The "internal use only" fields in regexp are present to pass
-- info from compile to execute that permits the execute phase
-- to run lots faster on simple cases. They are:
-- The "internal use only" fields in regexp are present to pass info from
-- compile to execute that permits the execute phase to run lots faster on
-- simple cases. They are:
-- First character that must begin a match or ASCII.Nul
-- Anchored true iff match must start at beginning of line
-- Must_Have pointer to string that match must include or null
-- Must_Have_Length length of Must_Have string
-- First and Anchored permit very fast decisions on suitable
-- starting points for a match, cutting down the work a lot.
-- Must_Have permits fast rejection of lines that cannot possibly
-- match.
-- The Must_Have tests are costly enough that Optimize
-- supplies a Must_Have only if the r.e. contains something potentially
-- expensive (at present, the only such thing detected is * or +
-- at the start of the r.e., which can involve a lot of backup).
-- The length is supplied because the test in Execute needs it
-- and Optimize is computing it anyway.
-- First and Anchored permit very fast decisions on suitable starting
-- points for a match, cutting down the work a lot. Must_Have permits fast
-- rejection of lines that cannot possibly match.
-- The Must_Have tests are costly enough that Optimize supplies a Must_Have
-- only if the r.e. contains something potentially expensive (at present,
-- the only such thing detected is * or at the start of the r.e., which can
-- involve a lot of backup). The length is supplied because the test in
-- Execute needs it and Optimize is computing it anyway.
-- The initialization is meant to fail-safe in case the user of this
-- package tries to use an uninitialized matcher. This takes advantage
......
......@@ -36,7 +36,7 @@
-- This package provides a utility routine for checking for bad spellings
package GNAT.Spelling_Checker is
pragma Pure (Spelling_Checker);
pragma Pure;
function Is_Bad_Spelling_Of
(Found : String;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1997-2005 Ada Core Technologies, Inc. --
-- Copyright (C) 1997-2005, 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- --
......@@ -44,7 +44,7 @@ with Ada.Strings.Unbounded; use Ada.Strings.Unbounded;
with Interfaces; use Interfaces;
package GNAT.Spitbol is
pragma Preelaborate (Spitbol);
pragma Preelaborate;
-- The Spitbol package relies heavily on the Unbounded_String package,
-- using the synonym VString for variable length string. The following
......@@ -231,7 +231,7 @@ pragma Preelaborate (Spitbol);
-- Any non-limited type can be used as the value type in the table
Null_Value : Value_Type;
-- Value used to represent a value that is not present in the table.
-- Value used to represent a value that is not present in the table
with function Img (A : Value_Type) return String;
-- Used to provide image of value in Dump procedure
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1998-2005 AdaCore --
-- Copyright (C) 1998-2005, 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- --
......@@ -56,7 +56,7 @@ generic
Table_Increment : Natural;
package GNAT.Table is
pragma Elaborate_Body (Table);
pragma Elaborate_Body;
-- Table_Component_Type and Table_Index_Type specify the type of the
-- array, Table_Low_Bound is the lower bound. Index_type must be an
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1998-2002 Ada Core Technologies, Inc. --
-- Copyright (C) 1998-2005 Ada Core Technologies, 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,7 +42,7 @@
-- they have no effect (they do NOT cause the tasking runtime to be loaded).
package GNAT.Task_Lock is
pragma Elaborate_Body (Task_Lock);
pragma Elaborate_Body;
procedure Lock;
pragma Inline (Lock);
......
......@@ -62,7 +62,7 @@
with Ada.Exceptions; use Ada.Exceptions;
package GNAT.Traceback.Symbolic is
pragma Elaborate_Body (Traceback.Symbolic);
pragma Elaborate_Body;
------------------------
-- Symbolic_Traceback --
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1992-2004 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2005 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- --
......@@ -40,7 +40,7 @@
with Types; use Types;
package Get_Targ is
pragma Preelaborate (Get_Targ);
pragma Preelaborate;
function Get_Bits_Per_Unit return Pos;
pragma Import (C, Get_Bits_Per_Unit, "get_target_bits_per_unit");
......
......@@ -7,7 +7,7 @@
@c o
@c G N A T C O D I N G S T Y L E o
@c o
@c Copyright (C) 1992-2004 Ada Core Technologies, Inc. o
@c Copyright (C) 1992-2005 Ada Core Technologies, Inc. o
@c o
@c GNAT is free software; you can redistribute it and/or modify it under o
@c terms of the GNU General Public License as published by the Free Soft- o
......@@ -52,7 +52,7 @@
@page
@vskip 0pt plus 1filll
Copyright @copyright{} 1995-2003, Free Software Foundation
Copyright @copyright{} 1995-2005, Free Software Foundation
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.1
......@@ -814,6 +814,20 @@ unique, to prevent name clashes when the packages are @code{use}d.
@item
After the file header comment, the context clause and unit specification
should be the first thing in a @syntax{program_unit}.
@item
Preelaborate, Pure and Elaborate_Body pragmas should be added right after the
package name, indented an extra level and using the parameterless form:
@smallexample @c adanocomment
@group
package Preelaborate_Package is
pragma Preelaborate;
...
end Preelaborate_Package;
@end group
@end smallexample
@end itemize
@c -------------------------------------------------------------------------
......
......@@ -34,6 +34,6 @@
-- This is the parent package for a library of useful units provided with GNAT
package GNAT is
pragma Pure (GNAT);
pragma Pure;
end GNAT;
......@@ -16,7 +16,7 @@
with System.Parameters;
package Interfaces.C is
pragma Pure (C);
pragma Pure;
-- Declaration's based on C's <limits.h>
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1993-2004 Free Software Foundation, Inc. --
-- Copyright (C) 1993-2005 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 --
......@@ -42,7 +42,7 @@ generic
Default_Terminator : Element;
package Interfaces.C.Pointers is
pragma Preelaborate (Pointers);
pragma Preelaborate;
type Pointer is access all Element;
......
......@@ -34,9 +34,10 @@
-- Missing package comment ???
with Ada.Tags;
package Interfaces.CPP is
pragma Elaborate_Body;
-- We have a dummy body to deal with bootstrap path issues
pragma Elaborate_Body;
-- We have a dummy body to deal with bootstrap path issues
subtype Vtable_Ptr is Ada.Tags.Tag;
......
......@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
-- Copyright (C) 1993-2004 Free Software Foundation, Inc. --
-- Copyright (C) 1993-2005 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 --
......@@ -36,7 +36,7 @@
------------------------------------------------------------------------------
package Interfaces.C.Strings is
pragma Preelaborate (Strings);
pragma Preelaborate;
type char_array_access is access all char_array;
......
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