From: Doug Rupp Date: Thu, 16 Jun 2005 08:29:27 +0000 (+0200) Subject: s-parame-vms.ads, [...]: Default_Exception_Msg_Max_Length: new parameter. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=df0db19f6982f910d61e99e61e98d4a7340db696;p=gcc.git s-parame-vms.ads, [...]: Default_Exception_Msg_Max_Length: new parameter. 2005-06-14 Doug Rupp * s-parame-vms.ads, s-parame-hpux.ads, s-parame-vms-restrict.ads, s-parame-ae653.ads, s-parame.ads, s-parame-vxworks.ads: Default_Exception_Msg_Max_Length: new parameter. * a-except.ads: (Exception_Msg_Max_Length): Set to System.Parameters.Default_Exception_Msg_Max_Length Add pragma Preelaborate_05 for AI-362 Add warnings off to allow categorization violations for AI-362 From-SVN: r101017 --- diff --git a/gcc/ada/a-except.ads b/gcc/ada/a-except.ads index 6510f339dcd..80c9c91475d 100644 --- a/gcc/ada/a-except.ads +++ b/gcc/ada/a-except.ads @@ -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 -- @@ -39,11 +39,24 @@ pragma Polling (Off); -- We must turn polling off for this unit, because otherwise we get -- elaboration circularities with ourself. +pragma Warnings (Off); +-- Allow withing of non-Preelaborated units in Ada 2005 mode where this +-- package will be categorized as Preelaborate. See AI-362 for details. +-- It is safe in the context of the run-time to violate the rules! + with System; +with System.Parameters; with System.Standard_Library; with System.Traceback_Entries; +pragma Warnings (On); package Ada.Exceptions is +pragma Warnings (Off); +pragma Preelaborate_05 (Exceptions); +pragma Warnings (On); +-- In accordance with Ada 2005 AI-362. The warnings pragmas are so that we can +-- compile this using older compiler versions, which will ignore the pragma, +-- which is fine for the bootstrap. type Exception_Id is private; Null_Id : constant Exception_Id; @@ -103,10 +116,11 @@ package Ada.Exceptions is private package SSL renames System.Standard_Library; + package SP renames System.Parameters; subtype EOA is Exception_Occurrence_Access; - Exception_Msg_Max_Length : constant := 200; + Exception_Msg_Max_Length : constant := SP.Default_Exception_Msg_Max_Length; ------------------ -- Exception_Id -- @@ -288,6 +302,11 @@ private pragma Stream_Convert (Exception_Occurrence, String_To_EO, EO_To_String); -- Functions for implementing Exception_Occurrence stream attributes + pragma Warnings (Off); + -- Allow non-static constants in Ada 2005 mode where this package will be + -- implicitly categorized as Preelaborate. See AI-362 for details. It is + -- safe in the context of the run-time to violate the rules! + Null_Occurrence : constant Exception_Occurrence := ( Id => Null_Id, Msg_Length => 0, @@ -299,4 +318,6 @@ private Tracebacks => (others => TBE.Null_TB_Entry), Private_Data => System.Null_Address); + pragma Warnings (On); + end Ada.Exceptions; diff --git a/gcc/ada/s-parame-ae653.ads b/gcc/ada/s-parame-ae653.ads index af397c2aeb7..45fcc53e363 100644 --- a/gcc/ada/s-parame-ae653.ads +++ b/gcc/ada/s-parame-ae653.ads @@ -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,7 +31,7 @@ -- -- ------------------------------------------------------------------------------ --- This is the default VxWorks AE 653 version of the package.` +-- This is the default VxWorks AE 653 version of the package -- This package defines some system dependent parameters for GNAT. These -- are values that are referenced by the runtime library and are therefore @@ -200,4 +200,12 @@ pragma Pure (Parameters); -- predefined output or not (True means that traces are output). -- See System.Traces for more details. + ------------------------------ + -- Exception Message Length -- + ------------------------------ + + Default_Exception_Msg_Max_Length : constant := 200; + -- This constant specifies the default number of characters to allow + -- in an exception message (200 is minimum required by RM 11.4.1(18)). + end System.Parameters; diff --git a/gcc/ada/s-parame-hpux.ads b/gcc/ada/s-parame-hpux.ads index 8be952a18c2..968ec33b2b8 100644 --- a/gcc/ada/s-parame-hpux.ads +++ b/gcc/ada/s-parame-hpux.ads @@ -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- -- @@ -32,7 +32,6 @@ ------------------------------------------------------------------------------ -- This is the HP version of this package --- Blank line intentional so that it lines up exactly with default. -- This package defines some system dependent parameters for GNAT. These -- are values that are referenced by the runtime library and are therefore @@ -199,4 +198,12 @@ pragma Pure (Parameters); -- predefined output or not (True means that traces are output). -- See System.Traces for more details. + ------------------------------ + -- Exception Message Length -- + ------------------------------ + + Default_Exception_Msg_Max_Length : constant := 200; + -- This constant specifies the default number of characters to allow + -- in an exception message (200 is minimum required by RM 11.4.1(18)). + end System.Parameters; diff --git a/gcc/ada/s-parame-vms-restrict.ads b/gcc/ada/s-parame-vms-restrict.ads index d1d48188176..ae265d917e6 100644 --- a/gcc/ada/s-parame-vms-restrict.ads +++ b/gcc/ada/s-parame-vms-restrict.ads @@ -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,9 +31,7 @@ -- -- ------------------------------------------------------------------------------ --- This is the OpenVMS version for restricted tasking. - --- Blank line intentional so that it lines up exactly with default. +-- This is the OpenVMS version for restricted tasking -- This package defines some system dependent parameters for GNAT. These -- are values that are referenced by the runtime library and are therefore @@ -200,4 +198,14 @@ pragma Pure (Parameters); -- predefined output or not (True means that traces are output). -- See System.Traces for more details. + ------------------------------ + -- Exception Message Length -- + ------------------------------ + + Default_Exception_Msg_Max_Length : constant := 512; + -- This constant specifies the maximum number of characters to allow in an + -- exception message (see RM 11.4.1(18)). The value for VMS exceeds the + -- default minimum of 200 to allow for the length of chained VMS condition + -- handling messages. + end System.Parameters; diff --git a/gcc/ada/s-parame-vms.ads b/gcc/ada/s-parame-vms.ads index 5b41ab79ec6..f90b5ba4fad 100644 --- a/gcc/ada/s-parame-vms.ads +++ b/gcc/ada/s-parame-vms.ads @@ -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,8 +31,7 @@ -- -- ------------------------------------------------------------------------------ --- This is the OpenVMS version. --- Blank line intentional so that it lines up exactly with default. +-- This is the OpenVMS version -- This package defines some system dependent parameters for GNAT. These -- are values that are referenced by the runtime library and are therefore @@ -199,4 +198,14 @@ pragma Pure (Parameters); -- predefined output or not (True means that traces are output). -- See System.Traces for more details. + ------------------------------ + -- Exception Message Length -- + ------------------------------ + + Default_Exception_Msg_Max_Length : constant := 512; + -- This constant specifies the maximum number of characters to allow in an + -- exception message (see RM 11.4.1(18)). The value for VMS exceeds the + -- default minimum of 200 to allow for the length of chained VMS condition + -- handling messages. + end System.Parameters; diff --git a/gcc/ada/s-parame-vxworks.ads b/gcc/ada/s-parame-vxworks.ads index 774280f8307..93fb5aae0f4 100644 --- a/gcc/ada/s-parame-vxworks.ads +++ b/gcc/ada/s-parame-vxworks.ads @@ -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,7 +31,7 @@ -- -- ------------------------------------------------------------------------------ --- This is the default VxWorks version of the package.` +-- This is the default VxWorks version of the package` -- This package defines some system dependent parameters for GNAT. These -- are values that are referenced by the runtime library and are therefore @@ -200,4 +200,12 @@ pragma Pure (Parameters); -- predefined output or not (True means that traces are output). -- See System.Traces for more details. + ------------------------------ + -- Exception Message Length -- + ------------------------------ + + Default_Exception_Msg_Max_Length : constant := 200; + -- This constant specifies the default number of characters to allow + -- in an exception message (200 is minimum required by RM 11.4.1(18)). + end System.Parameters; diff --git a/gcc/ada/s-parame.ads b/gcc/ada/s-parame.ads index 1e7fe650fad..8fdbd002574 100644 --- a/gcc/ada/s-parame.ads +++ b/gcc/ada/s-parame.ads @@ -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,8 +31,7 @@ -- -- ------------------------------------------------------------------------------ --- This is the default version used for all systems for which no special --- target-specific version of this package is provided. +-- Default version used when no target-specific version is provided -- This package defines some system dependent parameters for GNAT. These -- are values that are referenced by the runtime library and are therefore @@ -199,4 +198,12 @@ pragma Pure (Parameters); -- predefined output or not (True means that traces are output). -- See System.Traces for more details. + ------------------------------ + -- Exception Message Length -- + ------------------------------ + + Default_Exception_Msg_Max_Length : constant := 200; + -- This constant specifies the default number of characters to allow + -- in an exception message (200 is minimum required by RM 11.4.1(18)). + end System.Parameters;