-- --
-- B o d y --
-- --
--- 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- --
-- Suppress warning for out paramater Item which is not assigned
-- because it is pretty much empty.
- procedure Read (Stream : access Ada.Streams.Root_Stream_Type'Class;
- Item : out Root_Controlled)
+ procedure Read
+ (Stream : not null access Ada.Streams.Root_Stream_Type'Class;
+ Item : out Root_Controlled)
is
begin
null;
-- Read and Write must be empty in order to avoid copying the
-- finalization pointers.
- procedure Write (Stream : access Ada.Streams.Root_Stream_Type'Class;
- Item : in Root_Controlled)
+ procedure Write
+ (Stream : not null access Ada.Streams.Root_Stream_Type'Class;
+ Item : in Root_Controlled)
is
begin
null;
procedure Finalize (Object : in out Root_Controlled);
procedure Adjust (Object : in out Root_Controlled);
- procedure Write (Stream : access Ada.Streams.Root_Stream_Type'Class;
- Item : in Root_Controlled);
- procedure Read (Stream : access Ada.Streams.Root_Stream_Type'Class;
- Item : out Root_Controlled);
+ procedure Write
+ (Stream : not null access Ada.Streams.Root_Stream_Type'Class;
+ Item : in Root_Controlled);
+
+ procedure Read
+ (Stream : not null access Ada.Streams.Root_Stream_Type'Class;
+ Item : out Root_Controlled);
for Root_Controlled'Read use Read;
for Root_Controlled'Write use Write;
-- I_AD --
----------
- function I_AD (Stream : access RST) return Fat_Pointer is
+ function I_AD (Stream : not null access RST) return Fat_Pointer is
T : S_AD;
L : SEO;
-- I_AS --
----------
- function I_AS (Stream : access RST) return Thin_Pointer is
+ function I_AS (Stream : not null access RST) return Thin_Pointer is
T : S_AS;
L : SEO;
-- I_B --
---------
- function I_B (Stream : access RST) return Boolean is
+ function I_B (Stream : not null access RST) return Boolean is
T : S_B;
L : SEO;
-- I_C --
---------
- function I_C (Stream : access RST) return Character is
+ function I_C (Stream : not null access RST) return Character is
T : S_C;
L : SEO;
-- I_F --
---------
- function I_F (Stream : access RST) return Float is
+ function I_F (Stream : not null access RST) return Float is
T : S_F;
L : SEO;
-- I_I --
---------
- function I_I (Stream : access RST) return Integer is
+ function I_I (Stream : not null access RST) return Integer is
T : S_I;
L : SEO;
-- I_LF --
----------
- function I_LF (Stream : access RST) return Long_Float is
+ function I_LF (Stream : not null access RST) return Long_Float is
T : S_LF;
L : SEO;
-- I_LI --
----------
- function I_LI (Stream : access RST) return Long_Integer is
+ function I_LI (Stream : not null access RST) return Long_Integer is
T : S_LI;
L : SEO;
-- I_LLF --
-----------
- function I_LLF (Stream : access RST) return Long_Long_Float is
+ function I_LLF (Stream : not null access RST) return Long_Long_Float is
T : S_LLF;
L : SEO;
-- I_LLI --
-----------
- function I_LLI (Stream : access RST) return Long_Long_Integer is
+ function I_LLI (Stream : not null access RST) return Long_Long_Integer is
T : S_LLI;
L : SEO;
-- I_LLU --
-----------
- function I_LLU (Stream : access RST) return UST.Long_Long_Unsigned is
+ function I_LLU
+ (Stream : not null access RST) return UST.Long_Long_Unsigned
+ is
T : S_LLU;
L : SEO;
-- I_LU --
----------
- function I_LU (Stream : access RST) return UST.Long_Unsigned is
+ function I_LU (Stream : not null access RST) return UST.Long_Unsigned is
T : S_LU;
L : SEO;
-- I_SF --
----------
- function I_SF (Stream : access RST) return Short_Float is
+ function I_SF (Stream : not null access RST) return Short_Float is
T : S_SF;
L : SEO;
-- I_SI --
----------
- function I_SI (Stream : access RST) return Short_Integer is
+ function I_SI (Stream : not null access RST) return Short_Integer is
T : S_SI;
L : SEO;
-- I_SSI --
-----------
- function I_SSI (Stream : access RST) return Short_Short_Integer is
+ function I_SSI (Stream : not null access RST) return Short_Short_Integer is
T : S_SSI;
L : SEO;
-- I_SSU --
-----------
- function I_SSU (Stream : access RST) return UST.Short_Short_Unsigned is
+ function I_SSU
+ (Stream : not null access RST) return UST.Short_Short_Unsigned
+ is
T : S_SSU;
L : SEO;
-- I_SU --
----------
- function I_SU (Stream : access RST) return UST.Short_Unsigned is
+ function I_SU (Stream : not null access RST) return UST.Short_Unsigned is
T : S_SU;
L : SEO;
-- I_U --
---------
- function I_U (Stream : access RST) return UST.Unsigned is
+ function I_U (Stream : not null access RST) return UST.Unsigned is
T : S_U;
L : SEO;
-- I_WC --
----------
- function I_WC (Stream : access RST) return Wide_Character is
+ function I_WC (Stream : not null access RST) return Wide_Character is
T : S_WC;
L : SEO;
-- W_AD --
----------
- procedure W_AD (Stream : access RST; Item : in Fat_Pointer) is
+ procedure W_AD (Stream : not null access RST; Item : in Fat_Pointer) is
T : constant S_AD := From_AD (Item);
begin
-- W_AS --
----------
- procedure W_AS (Stream : access RST; Item : in Thin_Pointer) is
+ procedure W_AS (Stream : not null access RST; Item : in Thin_Pointer) is
T : constant S_AS := From_AS (Item);
begin
-- W_B --
---------
- procedure W_B (Stream : access RST; Item : in Boolean) is
+ procedure W_B (Stream : not null access RST; Item : in Boolean) is
T : S_B;
begin
-- W_C --
---------
- procedure W_C (Stream : access RST; Item : in Character) is
+ procedure W_C (Stream : not null access RST; Item : in Character) is
T : S_C;
begin
-- W_F --
---------
- procedure W_F (Stream : access RST; Item : in Float) is
+ procedure W_F (Stream : not null access RST; Item : in Float) is
T : constant S_F := From_F (Item);
begin
-- W_I --
---------
- procedure W_I (Stream : access RST; Item : in Integer) is
+ procedure W_I (Stream : not null access RST; Item : in Integer) is
T : constant S_I := From_I (Item);
begin
-- W_LF --
----------
- procedure W_LF (Stream : access RST; Item : in Long_Float) is
+ procedure W_LF (Stream : not null access RST; Item : in Long_Float) is
T : constant S_LF := From_LF (Item);
begin
-- W_LI --
----------
- procedure W_LI (Stream : access RST; Item : in Long_Integer) is
+ procedure W_LI (Stream : not null access RST; Item : in Long_Integer) is
T : constant S_LI := From_LI (Item);
begin
-- W_LLF --
-----------
- procedure W_LLF (Stream : access RST; Item : in Long_Long_Float) is
+ procedure W_LLF (Stream : not null access RST; Item : in Long_Long_Float) is
T : constant S_LLF := From_LLF (Item);
begin
-- W_LLI --
-----------
- procedure W_LLI (Stream : access RST; Item : in Long_Long_Integer) is
+ procedure W_LLI
+ (Stream : not null access RST; Item : in Long_Long_Integer)
+ is
T : constant S_LLI := From_LLI (Item);
begin
-- W_LLU --
-----------
- procedure W_LLU (Stream : access RST; Item : in UST.Long_Long_Unsigned) is
+ procedure W_LLU
+ (Stream : not null access RST; Item : in UST.Long_Long_Unsigned)
+ is
T : constant S_LLU := From_LLU (Item);
begin
-- W_LU --
----------
- procedure W_LU (Stream : access RST; Item : in UST.Long_Unsigned) is
+ procedure W_LU
+ (Stream : not null access RST; Item : in UST.Long_Unsigned)
+ is
T : constant S_LU := From_LU (Item);
begin
-- W_SF --
----------
- procedure W_SF (Stream : access RST; Item : in Short_Float) is
+ procedure W_SF (Stream : not null access RST; Item : in Short_Float) is
T : constant S_SF := From_SF (Item);
begin
-- W_SI --
----------
- procedure W_SI (Stream : access RST; Item : in Short_Integer) is
+ procedure W_SI (Stream : not null access RST; Item : in Short_Integer) is
T : constant S_SI := From_SI (Item);
begin
-- W_SSI --
-----------
- procedure W_SSI (Stream : access RST; Item : in Short_Short_Integer) is
+ procedure W_SSI
+ (Stream : not null access RST; Item : in Short_Short_Integer)
+ is
T : constant S_SSI := From_SSI (Item);
begin
-- W_SSU --
-----------
- procedure W_SSU (Stream : access RST; Item : in UST.Short_Short_Unsigned) is
+ procedure W_SSU
+ (Stream : not null access RST; Item : in UST.Short_Short_Unsigned)
+ is
T : constant S_SSU := From_SSU (Item);
begin
-- W_SU --
----------
- procedure W_SU (Stream : access RST; Item : in UST.Short_Unsigned) is
+ procedure W_SU
+ (Stream : not null access RST; Item : in UST.Short_Unsigned)
+ is
T : constant S_SU := From_SU (Item);
begin
-- W_U --
---------
- procedure W_U (Stream : access RST; Item : in UST.Unsigned) is
+ procedure W_U (Stream : not null access RST; Item : in UST.Unsigned) is
T : constant S_U := From_U (Item);
begin
-- W_WC --
----------
- procedure W_WC (Stream : access RST; Item : in Wide_Character) is
+ procedure W_WC (Stream : not null access RST; Item : in Wide_Character) is
T : constant S_WC := From_WC (Item);
begin
-- is the same for all elementary types (no bounds or discriminants
-- are involved).
- function I_AD (Stream : access RST) return Fat_Pointer;
- function I_AS (Stream : access RST) return Thin_Pointer;
- function I_B (Stream : access RST) return Boolean;
- function I_C (Stream : access RST) return Character;
- function I_F (Stream : access RST) return Float;
- function I_I (Stream : access RST) return Integer;
- function I_LF (Stream : access RST) return Long_Float;
- function I_LI (Stream : access RST) return Long_Integer;
- function I_LLF (Stream : access RST) return Long_Long_Float;
- function I_LLI (Stream : access RST) return Long_Long_Integer;
- function I_LLU (Stream : access RST) return UST.Long_Long_Unsigned;
- function I_LU (Stream : access RST) return UST.Long_Unsigned;
- function I_SF (Stream : access RST) return Short_Float;
- function I_SI (Stream : access RST) return Short_Integer;
- function I_SSI (Stream : access RST) return Short_Short_Integer;
- function I_SSU (Stream : access RST) return UST.Short_Short_Unsigned;
- function I_SU (Stream : access RST) return UST.Short_Unsigned;
- function I_U (Stream : access RST) return UST.Unsigned;
- function I_WC (Stream : access RST) return Wide_Character;
+ function I_AD (Stream : not null access RST) return Fat_Pointer;
+ function I_AS (Stream : not null access RST) return Thin_Pointer;
+ function I_B (Stream : not null access RST) return Boolean;
+ function I_C (Stream : not null access RST) return Character;
+ function I_F (Stream : not null access RST) return Float;
+ function I_I (Stream : not null access RST) return Integer;
+ function I_LF (Stream : not null access RST) return Long_Float;
+ function I_LI (Stream : not null access RST) return Long_Integer;
+ function I_LLF (Stream : not null access RST) return Long_Long_Float;
+ function I_LLI (Stream : not null access RST) return Long_Long_Integer;
+ function I_LLU (Stream : not null access RST) return UST.Long_Long_Unsigned;
+ function I_LU (Stream : not null access RST) return UST.Long_Unsigned;
+ function I_SF (Stream : not null access RST) return Short_Float;
+ function I_SI (Stream : not null access RST) return Short_Integer;
+ function I_SSI (Stream : not null access RST) return Short_Short_Integer;
+ function I_SSU (Stream : not null access RST)
+ return UST.Short_Short_Unsigned;
+ function I_SU (Stream : not null access RST) return UST.Short_Unsigned;
+ function I_U (Stream : not null access RST) return UST.Unsigned;
+ function I_WC (Stream : not null access RST) return Wide_Character;
-----------------------
-- Output Procedures --
-- between 'Write and 'Output because there are no discriminants
-- or bounds to be written.
- procedure W_AD (Stream : access RST; Item : in Fat_Pointer);
- procedure W_AS (Stream : access RST; Item : in Thin_Pointer);
- procedure W_B (Stream : access RST; Item : in Boolean);
- procedure W_C (Stream : access RST; Item : in Character);
- procedure W_F (Stream : access RST; Item : in Float);
- procedure W_I (Stream : access RST; Item : in Integer);
- procedure W_LF (Stream : access RST; Item : in Long_Float);
- procedure W_LI (Stream : access RST; Item : in Long_Integer);
- procedure W_LLF (Stream : access RST; Item : in Long_Long_Float);
- procedure W_LLI (Stream : access RST; Item : in Long_Long_Integer);
- procedure W_LLU (Stream : access RST; Item : in UST.Long_Long_Unsigned);
- procedure W_LU (Stream : access RST; Item : in UST.Long_Unsigned);
- procedure W_SF (Stream : access RST; Item : in Short_Float);
- procedure W_SI (Stream : access RST; Item : in Short_Integer);
- procedure W_SSI (Stream : access RST; Item : in Short_Short_Integer);
- procedure W_SSU (Stream : access RST; Item : in UST.Short_Short_Unsigned);
- procedure W_SU (Stream : access RST; Item : in UST.Short_Unsigned);
- procedure W_U (Stream : access RST; Item : in UST.Unsigned);
- procedure W_WC (Stream : access RST; Item : in Wide_Character);
+ procedure W_AD (Stream : not null access RST; Item : in Fat_Pointer);
+ procedure W_AS (Stream : not null access RST; Item : in Thin_Pointer);
+ procedure W_B (Stream : not null access RST; Item : in Boolean);
+ procedure W_C (Stream : not null access RST; Item : in Character);
+ procedure W_F (Stream : not null access RST; Item : in Float);
+ procedure W_I (Stream : not null access RST; Item : in Integer);
+ procedure W_LF (Stream : not null access RST; Item : in Long_Float);
+ procedure W_LI (Stream : not null access RST; Item : in Long_Integer);
+ procedure W_LLF (Stream : not null access RST; Item : in Long_Long_Float);
+ procedure W_LLI (Stream : not null access RST; Item : in Long_Long_Integer);
+ procedure W_LLU (Stream : not null access RST;
+ Item : in UST.Long_Long_Unsigned);
+ procedure W_LU (Stream : not null access RST; Item : in UST.Long_Unsigned);
+ procedure W_SF (Stream : not null access RST; Item : in Short_Float);
+ procedure W_SI (Stream : not null access RST; Item : in Short_Integer);
+ procedure W_SSI (Stream : not null access RST;
+ Item : in Short_Short_Integer);
+ procedure W_SSU (Stream : not null access RST;
+ Item : in UST.Short_Short_Unsigned);
+ procedure W_SU (Stream : not null access RST;
+ Item : in UST.Short_Unsigned);
+ procedure W_U (Stream : not null access RST; Item : in UST.Unsigned);
+ procedure W_WC (Stream : not null access RST; Item : in Wide_Character);
----------------------------
-- Composite Input/Output --
-- I_AD --
----------
- function I_AD (Stream : access RST) return Fat_Pointer is
+ function I_AD (Stream : not null access RST) return Fat_Pointer is
FP : Fat_Pointer;
begin
-- I_AS --
----------
- function I_AS (Stream : access RST) return Thin_Pointer is
+ function I_AS (Stream : not null access RST) return Thin_Pointer is
S : XDR_S_TM;
L : SEO;
U : XDR_TM := 0;
-- I_B --
---------
- function I_B (Stream : access RST) return Boolean is
+ function I_B (Stream : not null access RST) return Boolean is
begin
case I_SSU (Stream) is
when 0 => return False;
-- I_C --
---------
- function I_C (Stream : access RST) return Character is
+ function I_C (Stream : not null access RST) return Character is
S : XDR_S_C;
L : SEO;
-- I_F --
---------
- function I_F (Stream : access RST) return Float is
+ function I_F (Stream : not null access RST) return Float is
I : constant Precision := Single;
E_Size : Integer renames Fields (I).E_Size;
E_Bias : Integer renames Fields (I).E_Bias;
-- I_I --
---------
- function I_I (Stream : access RST) return Integer is
+ function I_I (Stream : not null access RST) return Integer is
S : XDR_S_I;
L : SEO;
U : XDR_U := 0;
-- I_LF --
----------
- function I_LF (Stream : access RST) return Long_Float is
+ function I_LF (Stream : not null access RST) return Long_Float is
I : constant Precision := Double;
E_Size : Integer renames Fields (I).E_Size;
E_Bias : Integer renames Fields (I).E_Bias;
-- I_LI --
----------
- function I_LI (Stream : access RST) return Long_Integer is
+ function I_LI (Stream : not null access RST) return Long_Integer is
S : XDR_S_LI;
L : SEO;
U : Unsigned := 0;
-- I_LLF --
-----------
- function I_LLF (Stream : access RST) return Long_Long_Float is
+ function I_LLF (Stream : not null access RST) return Long_Long_Float is
I : constant Precision := Quadruple;
E_Size : Integer renames Fields (I).E_Size;
E_Bias : Integer renames Fields (I).E_Bias;
-- I_LLI --
-----------
- function I_LLI (Stream : access RST) return Long_Long_Integer is
+ function I_LLI (Stream : not null access RST) return Long_Long_Integer is
S : XDR_S_LLI;
L : SEO;
U : Unsigned := 0;
-- I_LLU --
-----------
- function I_LLU (Stream : access RST) return Long_Long_Unsigned is
+ function I_LLU (Stream : not null access RST) return Long_Long_Unsigned is
S : XDR_S_LLU;
L : SEO;
U : Unsigned := 0;
-- I_LU --
----------
- function I_LU (Stream : access RST) return Long_Unsigned is
+ function I_LU (Stream : not null access RST) return Long_Unsigned is
S : XDR_S_LU;
L : SEO;
U : Unsigned := 0;
-- I_SF --
----------
- function I_SF (Stream : access RST) return Short_Float is
+ function I_SF (Stream : not null access RST) return Short_Float is
I : constant Precision := Single;
E_Size : Integer renames Fields (I).E_Size;
E_Bias : Integer renames Fields (I).E_Bias;
-- I_SI --
----------
- function I_SI (Stream : access RST) return Short_Integer is
+ function I_SI (Stream : not null access RST) return Short_Integer is
S : XDR_S_SI;
L : SEO;
U : XDR_SU := 0;
-- I_SSI --
-----------
- function I_SSI (Stream : access RST) return Short_Short_Integer is
+ function I_SSI (Stream : not null access RST) return Short_Short_Integer is
S : XDR_S_SSI;
L : SEO;
U : XDR_SSU;
-- I_SSU --
-----------
- function I_SSU (Stream : access RST) return Short_Short_Unsigned is
+ function I_SSU (Stream : not null access RST) return Short_Short_Unsigned is
S : XDR_S_SSU;
L : SEO;
U : XDR_SSU := 0;
-- I_SU --
----------
- function I_SU (Stream : access RST) return Short_Unsigned is
+ function I_SU (Stream : not null access RST) return Short_Unsigned is
S : XDR_S_SU;
L : SEO;
U : XDR_SU := 0;
-- I_U --
---------
- function I_U (Stream : access RST) return Unsigned is
+ function I_U (Stream : not null access RST) return Unsigned is
S : XDR_S_U;
L : SEO;
U : XDR_U := 0;
-- I_WC --
----------
- function I_WC (Stream : access RST) return Wide_Character is
+ function I_WC (Stream : not null access RST) return Wide_Character is
S : XDR_S_WC;
L : SEO;
U : XDR_WC := 0;
-- W_AD --
----------
- procedure W_AD (Stream : access RST; Item : in Fat_Pointer) is
+ procedure W_AD (Stream : not null access RST; Item : in Fat_Pointer) is
S : XDR_S_TM;
U : XDR_TM;
-- W_AS --
----------
- procedure W_AS (Stream : access RST; Item : in Thin_Pointer) is
+ procedure W_AS (Stream : not null access RST; Item : in Thin_Pointer) is
S : XDR_S_TM;
U : XDR_TM := XDR_TM (To_XDR_SA (Item.P1));
-- W_B --
---------
- procedure W_B (Stream : access RST; Item : in Boolean) is
+ procedure W_B (Stream : not null access RST; Item : in Boolean) is
begin
if Item then
W_SSU (Stream, 1);
-- W_C --
---------
- procedure W_C (Stream : access RST; Item : in Character) is
+ procedure W_C (Stream : not null access RST; Item : in Character) is
S : XDR_S_C;
pragma Assert (C_L = 1);
-- W_F --
---------
- procedure W_F (Stream : access RST; Item : in Float) is
+ procedure W_F (Stream : not null access RST; Item : in Float) is
I : constant Precision := Single;
E_Size : Integer renames Fields (I).E_Size;
E_Bias : Integer renames Fields (I).E_Bias;
-- W_I --
---------
- procedure W_I (Stream : access RST; Item : in Integer) is
+ procedure W_I (Stream : not null access RST; Item : in Integer) is
S : XDR_S_I;
U : XDR_U;
-- W_LF --
----------
- procedure W_LF (Stream : access RST; Item : in Long_Float) is
+ procedure W_LF (Stream : not null access RST; Item : in Long_Float) is
I : constant Precision := Double;
E_Size : Integer renames Fields (I).E_Size;
E_Bias : Integer renames Fields (I).E_Bias;
-- W_LI --
----------
- procedure W_LI (Stream : access RST; Item : in Long_Integer) is
+ procedure W_LI (Stream : not null access RST; Item : in Long_Integer) is
S : XDR_S_LI;
U : Unsigned;
X : Long_Unsigned;
-- W_LLF --
-----------
- procedure W_LLF (Stream : access RST; Item : in Long_Long_Float) is
+ procedure W_LLF (Stream : not null access RST; Item : in Long_Long_Float) is
I : constant Precision := Quadruple;
E_Size : Integer renames Fields (I).E_Size;
E_Bias : Integer renames Fields (I).E_Bias;
-- W_LLI --
-----------
- procedure W_LLI (Stream : access RST; Item : in Long_Long_Integer) is
+ procedure W_LLI (Stream : not null access RST;
+ Item : in Long_Long_Integer)
+ is
S : XDR_S_LLI;
U : Unsigned;
X : Long_Long_Unsigned;
-- W_LLU --
-----------
- procedure W_LLU (Stream : access RST; Item : in Long_Long_Unsigned) is
+ procedure W_LLU (Stream : not null access RST;
+ Item : in Long_Long_Unsigned) is
S : XDR_S_LLU;
U : Unsigned;
X : Long_Long_Unsigned := Item;
-- W_LU --
----------
- procedure W_LU (Stream : access RST; Item : in Long_Unsigned) is
+ procedure W_LU (Stream : not null access RST; Item : in Long_Unsigned) is
S : XDR_S_LU;
U : Unsigned;
X : Long_Unsigned := Item;
-- W_SF --
----------
- procedure W_SF (Stream : access RST; Item : in Short_Float) is
+ procedure W_SF (Stream : not null access RST; Item : in Short_Float) is
I : constant Precision := Single;
E_Size : Integer renames Fields (I).E_Size;
E_Bias : Integer renames Fields (I).E_Bias;
-- W_SI --
----------
- procedure W_SI (Stream : access RST; Item : in Short_Integer) is
+ procedure W_SI (Stream : not null access RST; Item : in Short_Integer) is
S : XDR_S_SI;
U : XDR_SU;
-- W_SSI --
-----------
- procedure W_SSI (Stream : access RST; Item : in Short_Short_Integer) is
+ procedure W_SSI
+ (Stream : not null access RST;
+ Item : in Short_Short_Integer)
+ is
S : XDR_S_SSI;
U : XDR_SSU;
-- W_SSU --
-----------
- procedure W_SSU (Stream : access RST; Item : in Short_Short_Unsigned) is
+ procedure W_SSU
+ (Stream : not null access RST;
+ Item : in Short_Short_Unsigned)
+ is
+ U : constant XDR_SSU := XDR_SSU (Item);
S : XDR_S_SSU;
- U : XDR_SSU := XDR_SSU (Item);
begin
S (1) := SE (U);
-- W_SU --
----------
- procedure W_SU (Stream : access RST; Item : in Short_Unsigned) is
+ procedure W_SU (Stream : not null access RST; Item : in Short_Unsigned) is
S : XDR_S_SU;
U : XDR_SU := XDR_SU (Item);
-- W_U --
---------
- procedure W_U (Stream : access RST; Item : in Unsigned) is
+ procedure W_U (Stream : not null access RST; Item : in Unsigned) is
S : XDR_S_U;
U : XDR_U := XDR_U (Item);
-- W_WC --
----------
- procedure W_WC (Stream : access RST; Item : in Wide_Character) is
+ procedure W_WC (Stream : not null access RST; Item : in Wide_Character) is
S : XDR_S_WC;
U : XDR_WC;