[Ada] Minor cleanups in exception handling
authorBob Duff <duff@adacore.com>
Mon, 12 Aug 2019 09:00:39 +0000 (09:00 +0000)
committerPierre-Marie de Rodat <pmderodat@gcc.gnu.org>
Mon, 12 Aug 2019 09:00:39 +0000 (09:00 +0000)
No change in behavior, so no test.

2019-08-12  Bob Duff  <duff@adacore.com>

gcc/ada/

* libgnat/a-except.ads: Update obsolete comment, still making
clear that this is a variant.  Add explicit default for Id
component of Exception_Occurrence, because that value is used.
Define Null_Occurrence less redundantly.
* libgnat/a-einuoc.adb: Minor simplification of code.

From-SVN: r274296

gcc/ada/ChangeLog
gcc/ada/libgnat/a-einuoc.adb
gcc/ada/libgnat/a-except.ads

index 244e91799738c8ec9be16d86362954ad5d6e58ff..351cc49015272a11e7b1307ea7299bf29c427ffc 100644 (file)
@@ -1,3 +1,11 @@
+2019-08-12  Bob Duff  <duff@adacore.com>
+
+       * libgnat/a-except.ads: Update obsolete comment, still making
+       clear that this is a variant.  Add explicit default for Id
+       component of Exception_Occurrence, because that value is used.
+       Define Null_Occurrence less redundantly.
+       * libgnat/a-einuoc.adb: Minor simplification of code.
+
 2019-08-12  Justin Squirek  <squirek@adacore.com>
 
        * libgnat/a-dhfina.adb, libgnat/a-dhfina.ads (Is_Simple_Name,
index a949a16b8da41edaa0da40a67b62fab4c5a64ec8..77d6b8dd9557508bc2d77953306f88fc33b380bd 100644 (file)
@@ -40,9 +40,5 @@ begin
    --  The null exception is uniquely identified by the fact that the Id value
    --  is null. No other exception occurrence can have a null Id.
 
-   if X.Id = Null_Id then
-      return True;
-   else
-      return False;
-   end if;
+   return X.Id = Null_Id;
 end Ada.Exceptions.Is_Null_Occurrence;
index 60ff5db5b5b14d278721c384753808b5402ae2a3..4f70769a9b942b1910264a68ade3ed7428f416b1 100644 (file)
 --                                                                          --
 ------------------------------------------------------------------------------
 
---  This version of Ada.Exceptions fully supports Ada 95 and later language
---  versions.  It is used in all situations except for the build of the
---  compiler and other basic tools. For these latter builds, we use an
---  Ada 95-only version.
-
---  The reason for this splitting off of a separate version is to support
---  older bootstrap compilers that do not support Ada 2005 features, and
---  Ada.Exceptions is part of the compiler sources.
+--  This is the default version of this package. We also have cert and zfp
+--  versions.
 
 pragma Polling (Off);
 --  We must turn polling off for this unit, because otherwise we get
@@ -284,7 +278,7 @@ private
    --  Traceback array stored in exception occurrence
 
    type Exception_Occurrence is record
-      Id : Exception_Id;
+      Id : Exception_Id := Null_Id;
       --  Exception_Identity for this exception occurrence
 
       Machine_Occurrence : System.Address;
@@ -336,14 +330,6 @@ private
    pragma Stream_Convert (Exception_Occurrence, String_To_EO, EO_To_String);
    --  Functions for implementing Exception_Occurrence stream attributes
 
-   Null_Occurrence : constant Exception_Occurrence := (
-     Id                 => null,
-     Machine_Occurrence => System.Null_Address,
-     Msg_Length         => 0,
-     Msg                => (others => ' '),
-     Exception_Raised   => False,
-     Pid                => 0,
-     Num_Tracebacks     => 0,
-     Tracebacks         => (others => TBE.Null_TB_Entry));
+   Null_Occurrence : constant Exception_Occurrence := (others => <>);
 
 end Ada.Exceptions;