summaryrefslogtreecommitdiff
path: root/gcc/ada
diff options
context:
space:
mode:
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2014-04-09 14:54:29 +0000
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2014-04-09 14:54:29 +0000
commitb1dc44f0fc043ce4894dadcf7c0597d5538d4dfd (patch)
tree84d7407f6ee7eb8701b437be3631cc15a607af29 /gcc/ada
parente5599f779d24361d252ea9a8feb9c941cbfbcb71 (diff)
downloadgcc-b1dc44f0fc043ce4894dadcf7c0597d5538d4dfd.tar.gz
PR ada/54040
PR ada/59346 * s-osinte-x32.adb: New file. * s-linux.ads (Time): New section. * s-linux-alpha.ads (Time): Likewise. * s-linux-android.ads (Time: Likewise. * s-linux-hppa.ads (Time): Likewise. * s-linux-mipsel.ads (Time): Likewise. * s-linux-sparc.ads (Time): Likewise. * s-linux-x32.ads (Time): Likewise. * s-osprim-x32.ads (timespec): Adjust. * s-osinte-linux.ads (Time): Define local subtypes for those defined in System.Linux. * s-taprop-linux.adb (Monotonic_Clock): Do not define timeval. * s-osinte-hpux.ads (timespec): Revert POSIX breakage. * s-osinte-kfreebsd-gnu.ads (timespec): Likewise. * s-osinte-solaris-posix.ads (timespec): Likewise. * s-osinte-posix.adb (To_Timespec): Likewise. * gcc-interface/Makefile.in (x32/Linux): Use s-osinte-x32.adb. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@209244 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada')
-rw-r--r--gcc/ada/ChangeLog23
-rw-r--r--gcc/ada/gcc-interface/Makefile.in2
-rw-r--r--gcc/ada/s-linux-alpha.ads28
-rw-r--r--gcc/ada/s-linux-android.ads24
-rw-r--r--gcc/ada/s-linux-hppa.ads26
-rw-r--r--gcc/ada/s-linux-mipsel.ads26
-rw-r--r--gcc/ada/s-linux-sparc.ads28
-rw-r--r--gcc/ada/s-linux-x32.ads21
-rw-r--r--gcc/ada/s-linux.ads26
-rw-r--r--gcc/ada/s-osinte-hpux.ads4
-rw-r--r--gcc/ada/s-osinte-kfreebsd-gnu.ads4
-rw-r--r--gcc/ada/s-osinte-linux.ads15
-rw-r--r--gcc/ada/s-osinte-posix.adb7
-rw-r--r--gcc/ada/s-osinte-solaris-posix.ads4
-rw-r--r--gcc/ada/s-osinte-x32.adb109
-rw-r--r--gcc/ada/s-osprim-x32.adb4
-rw-r--r--gcc/ada/s-taprop-linux.adb4
17 files changed, 293 insertions, 62 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index e3a690ad0ec..a43ad50d58a 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,25 @@
+2014-04-09 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR ada/54040
+ PR ada/59346
+ * s-osinte-x32.adb: New file.
+ * s-linux.ads (Time): New section.
+ * s-linux-alpha.ads (Time): Likewise.
+ * s-linux-android.ads (Time: Likewise.
+ * s-linux-hppa.ads (Time): Likewise.
+ * s-linux-mipsel.ads (Time): Likewise.
+ * s-linux-sparc.ads (Time): Likewise.
+ * s-linux-x32.ads (Time): Likewise.
+ * s-osprim-x32.ads (timespec): Adjust.
+ * s-osinte-linux.ads (Time): Define local subtypes for those defined
+ in System.Linux.
+ * s-taprop-linux.adb (Monotonic_Clock): Do not define timeval.
+ * s-osinte-hpux.ads (timespec): Revert POSIX breakage.
+ * s-osinte-kfreebsd-gnu.ads (timespec): Likewise.
+ * s-osinte-solaris-posix.ads (timespec): Likewise.
+ * s-osinte-posix.adb (To_Timespec): Likewise.
+ * gcc-interface/Makefile.in (x32/Linux): Use s-osinte-x32.adb.
+
2014-04-08 Eric Botcazou <ebotcazou@adacore.com>
PR ada/60411
@@ -6,6 +28,7 @@
* s-intman-android.adb: Likewise.
* sigtramp-armdroid.c: Likewise.
* sigtramp.h: Add Android support.
+ * s-osinte-android.ads: Adjust.
2014-04-07 Eric Botcazou <ebotcazou@adacore.com>
diff --git a/gcc/ada/gcc-interface/Makefile.in b/gcc/ada/gcc-interface/Makefile.in
index 5741bd9b841..9af1967ce9f 100644
--- a/gcc/ada/gcc-interface/Makefile.in
+++ b/gcc/ada/gcc-interface/Makefile.in
@@ -2239,7 +2239,7 @@ ifeq ($(strip $(filter-out %x32 linux%,$(target_cpu) $(target_os))),)
s-linux.ads<s-linux-x32.ads \
s-mudido.adb<s-mudido-affinity.adb \
s-osinte.ads<s-osinte-linux.ads \
- s-osinte.adb<s-osinte-posix.adb \
+ s-osinte.adb<s-osinte-x32.adb \
s-osprim.adb<s-osprim-x32.adb \
s-taprop.adb<s-taprop-linux.adb \
s-tasinf.ads<s-tasinf-linux.ads \
diff --git a/gcc/ada/s-linux-alpha.ads b/gcc/ada/s-linux-alpha.ads
index 1a9f37acd7d..e1c97ad9a33 100644
--- a/gcc/ada/s-linux-alpha.ads
+++ b/gcc/ada/s-linux-alpha.ads
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 2009-2011, Free Software Foundation, Inc. --
+-- Copyright (C) 2009-2014, Free Software Foundation, Inc. --
-- --
-- GNARL 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- --
@@ -35,14 +35,30 @@
-- PLEASE DO NOT add any with-clauses to this package or remove the pragma
-- Preelaborate. This package is designed to be a bottom-level (leaf) package.
+with Interfaces.C;
+
package System.Linux is
pragma Preelaborate;
- ------------
- -- time_t --
- ------------
-
- type time_t is new Long_Integer;
+ ----------
+ -- Time --
+ ----------
+
+ subtype long is Interfaces.C.long;
+ subtype suseconds_t is Interfaces.C.long;
+ subtype time_t is Interfaces.C.long;
+
+ type timespec is record
+ tv_sec : time_t;
+ tv_nsec : long;
+ end record;
+ pragma Convention (C, timespec);
+
+ type timeval is record
+ tv_sec : time_t;
+ tv_usec : suseconds_t;
+ end record;
+ pragma Convention (C, timeval);
-----------
-- Errno --
diff --git a/gcc/ada/s-linux-android.ads b/gcc/ada/s-linux-android.ads
index 3e5f1363194..85c421039b1 100644
--- a/gcc/ada/s-linux-android.ads
+++ b/gcc/ada/s-linux-android.ads
@@ -35,14 +35,30 @@
-- PLEASE DO NOT add any with-clauses to this package or remove the pragma
-- Preelaborate. This package is designed to be a bottom-level (leaf) package
+with Interfaces.C;
+
package System.Linux is
pragma Preelaborate;
- ------------
- -- time_t --
- ------------
+ ----------
+ -- Time --
+ ----------
+
+ subtype long is Interfaces.C.long;
+ subtype suseconds_t is Interfaces.C.long;
+ subtype time_t is Interfaces.C.long;
+
+ type timespec is record
+ tv_sec : time_t;
+ tv_nsec : long;
+ end record;
+ pragma Convention (C, timespec);
- type time_t is new Long_Integer;
+ type timeval is record
+ tv_sec : time_t;
+ tv_usec : suseconds_t;
+ end record;
+ pragma Convention (C, timeval);
-----------
-- Errno --
diff --git a/gcc/ada/s-linux-hppa.ads b/gcc/ada/s-linux-hppa.ads
index 90461504945..8f7d8117576 100644
--- a/gcc/ada/s-linux-hppa.ads
+++ b/gcc/ada/s-linux-hppa.ads
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 2008-2011, Free Software Foundation, Inc. --
+-- Copyright (C) 2008-2014, Free Software Foundation, Inc. --
-- --
-- GNARL 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- --
@@ -35,14 +35,30 @@
-- PLEASE DO NOT add any with-clauses to this package or remove the pragma
-- Preelaborate. This package is designed to be a bottom-level (leaf) package.
+with Interfaces.C;
+
package System.Linux is
pragma Preelaborate;
- ------------
- -- time_t --
- ------------
+ ----------
+ -- Time --
+ ----------
+
+ subtype long is Interfaces.C.long;
+ subtype suseconds_t is Interfaces.C.long;
+ subtype time_t is Interfaces.C.long;
+
+ type timespec is record
+ tv_sec : time_t;
+ tv_nsec : long;
+ end record;
+ pragma Convention (C, timespec);
- type time_t is new Long_Integer;
+ type timeval is record
+ tv_sec : time_t;
+ tv_usec : suseconds_t;
+ end record;
+ pragma Convention (C, timeval);
-----------
-- Errno --
diff --git a/gcc/ada/s-linux-mipsel.ads b/gcc/ada/s-linux-mipsel.ads
index 028ea7c0b60..1799a557ac6 100644
--- a/gcc/ada/s-linux-mipsel.ads
+++ b/gcc/ada/s-linux-mipsel.ads
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 2009-2011, Free Software Foundation, Inc. --
+-- Copyright (C) 2009-2014, Free Software Foundation, Inc. --
-- --
-- GNARL 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- --
@@ -34,14 +34,30 @@
-- PLEASE DO NOT add any with-clauses to this package or remove the pragma
-- Preelaborate. This package is designed to be a bottom-level (leaf) package
+with Interfaces.C;
+
package System.Linux is
pragma Preelaborate;
- ------------
- -- time_t --
- ------------
+ ----------
+ -- Time --
+ ----------
+
+ subtype long is Interfaces.C.long;
+ subtype suseconds_t is Interfaces.C.long;
+ subtype time_t is Interfaces.C.long;
+
+ type timespec is record
+ tv_sec : time_t;
+ tv_nsec : long;
+ end record;
+ pragma Convention (C, timespec);
- type time_t is new Long_Integer;
+ type timeval is record
+ tv_sec : time_t;
+ tv_usec : suseconds_t;
+ end record;
+ pragma Convention (C, timeval);
-----------
-- Errno --
diff --git a/gcc/ada/s-linux-sparc.ads b/gcc/ada/s-linux-sparc.ads
index db3b4ea794c..ae813e6b3b4 100644
--- a/gcc/ada/s-linux-sparc.ads
+++ b/gcc/ada/s-linux-sparc.ads
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 2009-2011, Free Software Foundation, Inc. --
+-- Copyright (C) 2009-2014, Free Software Foundation, Inc. --
-- --
-- GNARL 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- --
@@ -35,14 +35,30 @@
-- PLEASE DO NOT add any with-clauses to this package or remove the pragma
-- Preelaborate. This package is designed to be a bottom-level (leaf) package
+with Interfaces.C;
+
package System.Linux is
pragma Preelaborate;
- ------------
- -- time_t --
- ------------
-
- type time_t is new Long_Integer;
+ ----------
+ -- Time --
+ ----------
+
+ subtype long is Interfaces.C.long;
+ subtype suseconds_t is Interfaces.C.long;
+ subtype time_t is Interfaces.C.long;
+
+ type timespec is record
+ tv_sec : time_t;
+ tv_nsec : long;
+ end record;
+ pragma Convention (C, timespec);
+
+ type timeval is record
+ tv_sec : time_t;
+ tv_usec : suseconds_t;
+ end record;
+ pragma Convention (C, timeval);
-----------
-- Errno --
diff --git a/gcc/ada/s-linux-x32.ads b/gcc/ada/s-linux-x32.ads
index 9dc0e830d94..1b2d46eddd2 100644
--- a/gcc/ada/s-linux-x32.ads
+++ b/gcc/ada/s-linux-x32.ads
@@ -6,7 +6,8 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 2013, Free Software Foundation, Inc. --
+-- Copyright (C) 2013-2014, Free Software Foundation, Inc. --
+--
-- --
-- GNARL 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- --
@@ -38,12 +39,24 @@
package System.Linux is
pragma Preelaborate;
- ------------
- -- time_t --
- ------------
+ ----------
+ -- Time --
+ ----------
type time_t is new Long_Long_Integer;
+ type timespec is record
+ tv_sec : time_t;
+ tv_nsec : Long_Long_Integer;
+ end record;
+ pragma Convention (C, timespec);
+
+ type timeval is record
+ tv_sec : time_t;
+ tv_usec : Long_Long_Integer;
+ end record;
+ pragma Convention (C, timeval);
+
-----------
-- Errno --
-----------
diff --git a/gcc/ada/s-linux.ads b/gcc/ada/s-linux.ads
index 2339e29e04b..8a49e8c891e 100644
--- a/gcc/ada/s-linux.ads
+++ b/gcc/ada/s-linux.ads
@@ -6,7 +6,7 @@
-- --
-- S p e c --
-- --
--- Copyright (C) 2008-2011, Free Software Foundation, Inc. --
+-- Copyright (C) 2008-2014, Free Software Foundation, Inc. --
-- --
-- GNARL 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- --
@@ -35,14 +35,30 @@
-- PLEASE DO NOT add any with-clauses to this package or remove the pragma
-- Preelaborate. This package is designed to be a bottom-level (leaf) package
+with Interfaces.C;
+
package System.Linux is
pragma Preelaborate;
- ------------
- -- time_t --
- ------------
+ ----------
+ -- Time --
+ ----------
+
+ subtype long is Interfaces.C.long;
+ subtype suseconds_t is Interfaces.C.long;
+ subtype time_t is Interfaces.C.long;
+
+ type timespec is record
+ tv_sec : time_t;
+ tv_nsec : long;
+ end record;
+ pragma Convention (C, timespec);
- type time_t is new Long_Integer;
+ type timeval is record
+ tv_sec : time_t;
+ tv_usec : suseconds_t;
+ end record;
+ pragma Convention (C, timeval);
-----------
-- Errno --
diff --git a/gcc/ada/s-osinte-hpux.ads b/gcc/ada/s-osinte-hpux.ads
index 396844c68a3..6beb0501899 100644
--- a/gcc/ada/s-osinte-hpux.ads
+++ b/gcc/ada/s-osinte-hpux.ads
@@ -7,7 +7,7 @@
-- S p e c --
-- --
-- Copyright (C) 1991-1994, Florida State University --
--- Copyright (C) 1995-2013, Free Software Foundation, Inc. --
+-- Copyright (C) 1995-2014, 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- --
@@ -522,7 +522,7 @@ private
type timespec is record
tv_sec : time_t;
- tv_nsec : time_t;
+ tv_nsec : long;
end record;
pragma Convention (C, timespec);
diff --git a/gcc/ada/s-osinte-kfreebsd-gnu.ads b/gcc/ada/s-osinte-kfreebsd-gnu.ads
index f57fe9fea07..be46c2e531e 100644
--- a/gcc/ada/s-osinte-kfreebsd-gnu.ads
+++ b/gcc/ada/s-osinte-kfreebsd-gnu.ads
@@ -7,7 +7,7 @@
-- S p e c --
-- --
-- Copyright (C) 1991-1994, Florida State University --
--- Copyright (C) 1995-2013, Free Software Foundation, Inc. --
+-- Copyright (C) 1995-2014, 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- --
@@ -492,7 +492,7 @@ private
type timespec is record
tv_sec : time_t;
- tv_nsec : time_t;
+ tv_nsec : long;
end record;
pragma Convention (C, timespec);
diff --git a/gcc/ada/s-osinte-linux.ads b/gcc/ada/s-osinte-linux.ads
index 3f8df80c072..15a351ac1c0 100644
--- a/gcc/ada/s-osinte-linux.ads
+++ b/gcc/ada/s-osinte-linux.ads
@@ -7,7 +7,7 @@
-- S p e c --
-- --
-- Copyright (C) 1991-1994, Florida State University --
--- Copyright (C) 1995-2013, Free Software Foundation, Inc. --
+-- Copyright (C) 1995-2014, 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- --
@@ -217,8 +217,9 @@ package System.OS_Interface is
-- Time --
----------
- type timespec is private;
- type time_t is private;
+ subtype time_t is System.Linux.time_t;
+ subtype timespec is System.Linux.timespec;
+ subtype timeval is System.Linux.timeval;
function To_Duration (TS : timespec) return Duration;
pragma Inline (To_Duration);
@@ -598,14 +599,6 @@ private
type pid_t is new int;
- type time_t is new System.Linux.time_t;
-
- type timespec is record
- tv_sec : time_t;
- tv_nsec : time_t;
- end record;
- pragma Convention (C, timespec);
-
type unsigned_long_long_t is mod 2 ** 64;
-- Local type only used to get the alignment of this type below
diff --git a/gcc/ada/s-osinte-posix.adb b/gcc/ada/s-osinte-posix.adb
index 402ddcb6190..6bcc7223564 100644
--- a/gcc/ada/s-osinte-posix.adb
+++ b/gcc/ada/s-osinte-posix.adb
@@ -7,7 +7,7 @@
-- B o d y --
-- --
-- Copyright (C) 1991-1994, Florida State University --
--- Copyright (C) 1995-2010, AdaCore --
+-- Copyright (C) 1995-2014, 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- --
@@ -30,8 +30,7 @@
-- --
------------------------------------------------------------------------------
--- This is a GNU/LinuxThreads, Solaris pthread and HP-UX pthread version
--- of this package.
+-- This version is for POSIX-like operating systems
pragma Polling (Off);
-- Turn off polling, we do not want ATC polling to take place during
@@ -104,7 +103,7 @@ package body System.OS_Interface is
end if;
return timespec'(tv_sec => S,
- tv_nsec => time_t (Long_Long_Integer (F * 10#1#E9)));
+ tv_nsec => long (Long_Long_Integer (F * 10#1#E9)));
end To_Timespec;
end System.OS_Interface;
diff --git a/gcc/ada/s-osinte-solaris-posix.ads b/gcc/ada/s-osinte-solaris-posix.ads
index 7aa20f11598..0859b8d7b82 100644
--- a/gcc/ada/s-osinte-solaris-posix.ads
+++ b/gcc/ada/s-osinte-solaris-posix.ads
@@ -7,7 +7,7 @@
-- S p e c --
-- --
-- Copyright (C) 1991-1994, Florida State University --
--- Copyright (C) 1995-2013, Free Software Foundation, Inc. --
+-- Copyright (C) 1995-2014, 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- --
@@ -513,7 +513,7 @@ private
type timespec is record
tv_sec : time_t;
- tv_nsec : time_t;
+ tv_nsec : long;
end record;
pragma Convention (C, timespec);
diff --git a/gcc/ada/s-osinte-x32.adb b/gcc/ada/s-osinte-x32.adb
new file mode 100644
index 00000000000..17989cdaf5a
--- /dev/null
+++ b/gcc/ada/s-osinte-x32.adb
@@ -0,0 +1,109 @@
+------------------------------------------------------------------------------
+-- --
+-- GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS --
+-- --
+-- S Y S T E M . O S _ I N T E R F A C E --
+-- --
+-- B o d y --
+-- --
+-- Copyright (C) 1991-1994, Florida State University --
+-- Copyright (C) 1995-2014, 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- --
+-- ware Foundation; either version 3, or (at your option) any later ver- --
+-- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
+-- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
+-- or FITNESS FOR A PARTICULAR PURPOSE. --
+-- --
+-- As a special exception under Section 7 of GPL version 3, you are granted --
+-- additional permissions described in the GCC Runtime Library Exception, --
+-- version 3.1, as published by the Free Software Foundation. --
+-- --
+-- You should have received a copy of the GNU General Public License and --
+-- a copy of the GCC Runtime Library Exception along with this program; --
+-- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --
+-- <http://www.gnu.org/licenses/>. --
+-- --
+-- GNARL was developed by the GNARL team at Florida State University. --
+-- Extensive contributions were provided by Ada Core Technologies, Inc. --
+-- --
+------------------------------------------------------------------------------
+
+-- This version is for Linux/x32
+
+pragma Polling (Off);
+-- Turn off polling, we do not want ATC polling to take place during
+-- tasking operations. It causes infinite loops and other problems.
+
+-- This package encapsulates all direct interfaces to OS services
+-- that are needed by children of System.
+
+with Interfaces.C; use Interfaces.C;
+package body System.OS_Interface is
+
+ --------------------
+ -- Get_Stack_Base --
+ --------------------
+
+ function Get_Stack_Base (thread : pthread_t) return Address is
+ pragma Warnings (Off, thread);
+
+ begin
+ return Null_Address;
+ end Get_Stack_Base;
+
+ ------------------
+ -- pthread_init --
+ ------------------
+
+ procedure pthread_init is
+ begin
+ null;
+ end pthread_init;
+
+ -----------------
+ -- To_Duration --
+ -----------------
+
+ function To_Duration (TS : timespec) return Duration is
+ begin
+ return Duration (TS.tv_sec) + Duration (TS.tv_nsec) / 10#1#E9;
+ end To_Duration;
+
+ ------------------------
+ -- To_Target_Priority --
+ ------------------------
+
+ function To_Target_Priority
+ (Prio : System.Any_Priority) return Interfaces.C.int
+ is
+ begin
+ return Interfaces.C.int (Prio);
+ end To_Target_Priority;
+
+ -----------------
+ -- To_Timespec --
+ -----------------
+
+ function To_Timespec (D : Duration) return timespec is
+ S : time_t;
+ F : Duration;
+
+ begin
+ S := time_t (Long_Long_Integer (D));
+ F := D - Duration (S);
+
+ -- If F has negative value due to a round-up, adjust for positive F
+ -- value.
+
+ if F < 0.0 then
+ S := S - 1;
+ F := F + 1.0;
+ end if;
+
+ return timespec'(tv_sec => S,
+ tv_nsec => Long_Long_Integer (F * 10#1#E9));
+ end To_Timespec;
+
+end System.OS_Interface;
diff --git a/gcc/ada/s-osprim-x32.adb b/gcc/ada/s-osprim-x32.adb
index 5d4964a2776..fb00e780fa6 100644
--- a/gcc/ada/s-osprim-x32.adb
+++ b/gcc/ada/s-osprim-x32.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 2013, Free Software Foundation, Inc. --
+-- Copyright (C) 2013-2014, Free Software Foundation, Inc. --
-- --
-- GNARL 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 @@ package body System.OS_Primitives is
type timespec is record
tv_sec : time_t;
- tv_nsec : time_t;
+ tv_nsec : Long_Long_Integer;
end record;
pragma Convention (C, timespec);
diff --git a/gcc/ada/s-taprop-linux.adb b/gcc/ada/s-taprop-linux.adb
index 515850a6838..5aa384ba126 100644
--- a/gcc/ada/s-taprop-linux.adb
+++ b/gcc/ada/s-taprop-linux.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 1992-2012, Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2014, Free Software Foundation, Inc. --
-- --
-- GNARL 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- --
@@ -627,8 +627,6 @@ package body System.Task_Primitives.Operations is
function Monotonic_Clock return Duration is
use Interfaces;
- type timeval is array (1 .. 2) of System.OS_Interface.time_t;
-
procedure timeval_to_duration
(T : not null access timeval;
sec : not null access C.long;