osint-c.ads: Minor comment update.
authorArnaud Charlet <charlet@adacore.com>
Mon, 26 Oct 2015 11:44:33 +0000 (11:44 +0000)
committerArnaud Charlet <charlet@gcc.gnu.org>
Mon, 26 Oct 2015 11:44:33 +0000 (12:44 +0100)
2015-10-26  Arnaud Charlet  <charlet@adacore.com>

* osint-c.ads: Minor comment update.

2015-10-26  Arnaud Charlet  <charlet@adacore.com>

* s-osinte-hpux.ads, s-osinte-aix.ads, s-osinte-solaris-posix.ads,
s-osinte-darwin.ads, s-osinte-android.ads, s-osinte-freebsd.ads,
s-taprop-posix.adb (Get_Page_Size): C function returns an int. Adjust
callers accordingly.

From-SVN: r229342

gcc/ada/ChangeLog
gcc/ada/osint-c.ads
gcc/ada/s-osinte-aix.ads
gcc/ada/s-osinte-android.ads
gcc/ada/s-osinte-darwin.ads
gcc/ada/s-osinte-freebsd.ads
gcc/ada/s-osinte-hpux.ads
gcc/ada/s-osinte-solaris-posix.ads
gcc/ada/s-taprop-posix.adb

index 244014f20c831ed656f7957ea8039db4072cf83c..76f1356b279d39d4be846ab20982b12d321cfb99 100644 (file)
@@ -1,3 +1,14 @@
+2015-10-26  Arnaud Charlet  <charlet@adacore.com>
+
+       * osint-c.ads: Minor comment update.
+
+2015-10-26  Arnaud Charlet  <charlet@adacore.com>
+
+       * s-osinte-hpux.ads, s-osinte-aix.ads, s-osinte-solaris-posix.ads,
+       s-osinte-darwin.ads, s-osinte-android.ads, s-osinte-freebsd.ads,
+       s-taprop-posix.adb (Get_Page_Size): C function returns an int. Adjust
+       callers accordingly.
+
 2015-10-26  Hristian Kirtchev  <kirtchev@adacore.com>
 
        * exp_ch4.adb (Is_OK_Object_Reference): New routine.
index afd4e84a346a0cb0d061029d8b0e58c8054a3b53..6819ec037ad15db69e991d7f30b9b6e80dd27d84 100644 (file)
@@ -111,8 +111,7 @@ package Osint.C is
    procedure Set_File_Name (Ext : String);
    --  Sets a default file name from the main compiler source name. Ext is the
    --  extension, e.g. "ali" for a library information file. The name is in
-   --  Name_Buffer (with length in Name_Len) on return. This is visible in
-   --  the spec since it used directly by clients in the .Net case.
+   --  Name_Buffer (with length in Name_Len) on return.
 
    --------------------------------
    -- Library Information Output --
index 5df0353ea7c9a7ee9a8b44e45928d54afeb5ec1c..02e843718b645e12782e9698e1347e4d8909faa7 100644 (file)
@@ -7,7 +7,7 @@
 --                                  S p e c                                 --
 --                                                                          --
 --             Copyright (C) 1991-1994, Florida State University            --
---          Copyright (C) 1995-2014, Free Software Foundation, Inc.         --
+--          Copyright (C) 1995-2015, 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- --
@@ -319,8 +319,7 @@ package System.OS_Interface is
    --  Returns the stack base of the specified thread. Only call this function
    --  when Stack_Base_Available is True.
 
-   function Get_Page_Size return size_t;
-   function Get_Page_Size return Address;
+   function Get_Page_Size return int;
    pragma Import (C, Get_Page_Size, "getpagesize");
    --  Returns the size of a page
 
index 0fd39da4570b93fc5eda003e23674733299c6b0c..88dc03eb7ca901991e9de2c29508f4df47c45514 100644 (file)
@@ -317,8 +317,7 @@ package System.OS_Interface is
      return Address is (Null_Address);
    --  This is a dummy procedure to share some GNULLI files
 
-   function Get_Page_Size return size_t;
-   function Get_Page_Size return Address;
+   function Get_Page_Size return int;
    pragma Import (C, Get_Page_Size, "_getpagesize");
    --  Returns the size of a page
 
index 9eaa2129171cf5a2bf4db1c841de26f191de2cef..0dbbdfe0599cc30f9fa91537be482d8339562b11 100644 (file)
@@ -7,7 +7,7 @@
 --                                  S p e c                                 --
 --                                                                          --
 --             Copyright (C) 1991-1994, Florida State University            --
---          Copyright (C) 1995-2014, Free Software Foundation, Inc.         --
+--          Copyright (C) 1995-2015, 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- --
@@ -299,8 +299,7 @@ package System.OS_Interface is
    --  returns the stack base of the specified thread. Only call this function
    --  when Stack_Base_Available is True.
 
-   function Get_Page_Size return size_t;
-   function Get_Page_Size return System.Address;
+   function Get_Page_Size return int;
    pragma Import (C, Get_Page_Size, "getpagesize");
    --  Returns the size of a page
 
index 625d2dcd661ebc80f31984a7461b83102bafa56a..8a0eec63c6e4296fd9f7cafbf71cbbca66fa283b 100644 (file)
@@ -7,7 +7,7 @@
 --                                   S p e c                                --
 --                                                                          --
 --             Copyright (C) 1991-1994, Florida State University            --
---          Copyright (C) 1995-2014, Free Software Foundation, Inc.         --
+--          Copyright (C) 1995-2015, 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- --
@@ -332,8 +332,7 @@ package System.OS_Interface is
    --  returns the stack base of the specified thread. Only call this function
    --  when Stack_Base_Available is True.
 
-   function Get_Page_Size return size_t;
-   function Get_Page_Size return Address;
+   function Get_Page_Size return int;
    pragma Import (C, Get_Page_Size, "getpagesize");
    --  Returns the size of a page
 
index 6beb0501899692daaaf45662915469e42bab7b67..ab22dad81c84a98c3898655d75c38c6934e294e5 100644 (file)
@@ -7,7 +7,7 @@
 --                                  S p e c                                 --
 --                                                                          --
 --               Copyright (C) 1991-1994, Florida State University          --
---            Copyright (C) 1995-2014, Free Software Foundation, Inc.       --
+--            Copyright (C) 1995-2015, 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- --
@@ -301,8 +301,7 @@ package System.OS_Interface is
    --  Returns the stack base of the specified thread. Only call this function
    --  when Stack_Base_Available is True.
 
-   function Get_Page_Size return size_t;
-   function Get_Page_Size return Address;
+   function Get_Page_Size return int;
    pragma Import (C, Get_Page_Size, "getpagesize");
    --  Returns the size of a page
 
index 4e27fd1f4f75a63cf3ba8ea1e9e7301f552e41e6..09f9f1f34905238612edeee3e3bf498d9e7048a7 100644 (file)
@@ -7,7 +7,7 @@
 --                                  S p e c                                 --
 --                                                                          --
 --             Copyright (C) 1991-1994, Florida State University            --
---          Copyright (C) 1995-2014, Free Software Foundation, Inc.         --
+--          Copyright (C) 1995-2015, 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- --
@@ -300,8 +300,7 @@ package System.OS_Interface is
    --  Returns the stack base of the specified thread. Only call this function
    --  when Stack_Base_Available is True.
 
-   function Get_Page_Size return size_t;
-   function Get_Page_Size return Address;
+   function Get_Page_Size return int;
    pragma Import (C, Get_Page_Size, "getpagesize");
    --  Returns the size of a page
 
index e3b9840dc7a81f5c14476240d43b86cff5b15883..5ed7badc85384c13010272a9faebfe47cc3271c9 100644 (file)
@@ -315,21 +315,20 @@ package body System.Task_Primitives.Operations is
 
    procedure Stack_Guard (T : ST.Task_Id; On : Boolean) is
       Stack_Base : constant Address := Get_Stack_Base (T.Common.LL.Thread);
-      Guard_Page_Address : Address;
-
-      Res : Interfaces.C.int;
+      Page_Size  : Address;
+      Res        : Interfaces.C.int;
 
    begin
       if Stack_Base_Available then
 
          --  Compute the guard page address
 
-         Guard_Page_Address :=
-           Stack_Base - (Stack_Base mod Get_Page_Size) + Get_Page_Size;
-
+         Page_Size := Address (Get_Page_Size);
          Res :=
-           mprotect (Guard_Page_Address, Get_Page_Size,
-                     prot => (if On then PROT_ON else PROT_OFF));
+           mprotect
+             (Stack_Base - (Stack_Base mod Page_Size) + Page_Size,
+              size_t (Page_Size),
+              prot => (if On then PROT_ON else PROT_OFF));
          pragma Assert (Res = 0);
       end if;
    end Stack_Guard;
@@ -978,7 +977,8 @@ package body System.Task_Primitives.Operations is
    is
       Attributes          : aliased pthread_attr_t;
       Adjusted_Stack_Size : Interfaces.C.size_t;
-      Page_Size           : constant Interfaces.C.size_t := Get_Page_Size;
+      Page_Size           : constant Interfaces.C.size_t :=
+                              Interfaces.C.size_t (Get_Page_Size);
       Result              : Interfaces.C.int;
 
       function Thread_Body_Access is new