re PR ada/82384 (s-taprop.adb failed to compile for x32)
authorEric Botcazou <ebotcazou@gcc.gnu.org>
Mon, 2 Oct 2017 19:38:06 +0000 (19:38 +0000)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Mon, 2 Oct 2017 19:38:06 +0000 (19:38 +0000)
PR ada/82384
* libgnarl/s-linux__x32.ads (suseconds_t): New subtype.
(time_t): Change from derived type to subtype.
(timeval): Use suseconds_t for tv_usec.
* libgnarl/s-osinte__x32.adb (To_Timespec): Remove use type clause.

From-SVN: r253366

gcc/ada/ChangeLog
gcc/ada/libgnarl/s-linux__x32.ads
gcc/ada/libgnarl/s-osinte__x32.adb

index 848b88f..86ff9ed 100644 (file)
@@ -1,3 +1,12 @@
+2017-10-02  Eric Botcazou  <ebotcazou@adacore.com>
+            Pierre-Marie de Rodat  <derodat@adacore.com>
+
+       PR ada/82384
+       * libgnarl/s-linux__x32.ads (suseconds_t): New subtype.
+       (time_t): Change from derived type to subtype.
+       (timeval): Use suseconds_t for tv_usec.
+       * libgnarl/s-osinte__x32.adb (To_Timespec): Remove use type clause.
+
 2017-10-02  Richard Sandiford  <richard.sandiford@linaro.org>
 
        * gcc-interface/decl.c (annotate_value): Use wi::to_widest when
@@ -16,7 +25,7 @@
        * doc/gnat_ugn/building_executable_programs_with_gnat.rst,
        doc/gnat_ugn/the_gnat_compilation_model.rst: Avoid use of single colon
        in comment markup.
-       * gnat_ugn.texi: Regenerate.
+       * gnat_ugn.texi: Regenerate.
 
 2017-09-29  Justin Squirek  <squirek@adacore.com>
 
index 823d806..ad9a7b9 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                  S p e c                                 --
 --                                                                          --
---             Copyright (C) 2013-2017, Free Software Foundation, Inc.      --
+--          Copyright (C) 2013-2017, Free Software Foundation, Inc.         --
 --
 --                                                                          --
 -- GNARL is free software; you can  redistribute it  and/or modify it under --
@@ -45,8 +45,9 @@ package System.Linux is
    -- Time --
    ----------
 
-   type time_t       is new Long_Long_Integer;
-   subtype clockid_t is Interfaces.C.int;
+   subtype suseconds_t is Long_Long_Integer;
+   subtype time_t      is Long_Long_Integer;
+   subtype clockid_t   is Interfaces.C.int;
 
    type timespec is record
       tv_sec  : time_t;
@@ -56,7 +57,7 @@ package System.Linux is
 
    type timeval is record
       tv_sec  : time_t;
-      tv_usec : Long_Long_Integer;
+      tv_usec : suseconds_t;
    end record;
    pragma Convention (C, timeval);
 
index a2874be..6bb80cd 100644 (file)
@@ -90,7 +90,6 @@ package body System.OS_Interface is
       S : time_t;
       F : Duration;
 
-      use type System.Linux.time_t;
    begin
       S := time_t (Long_Long_Integer (D));
       F := D - Duration (S);