public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] [ADA] Fix bootstrap failure on mips64el-linux-gnuabi64
@ 2017-03-10 17:38 James Cowgill
  2017-03-11 12:11 ` Arnaud Charlet
  0 siblings, 1 reply; 4+ messages in thread
From: James Cowgill @ 2017-03-10 17:38 UTC (permalink / raw)
  To: gcc-patches

Hi,

This patch fixes an error caused by my changing of the signal constants
on MIPS in r244026. While that patch worked on mipsel, ada fails to
bootstrap with it on mips64el with the error:

s-osinte.ads:610:07: component "sa_flags" overlaps "sa_handler" at line 608
../gcc-interface/Makefile:297: recipe for target 'a-dispat.o' failed
make[9]: *** [a-dispat.o] Error 1

The fix is to adjust the size of sa_flags in struct_sigaction from an
unsigned long to an int. I checked the glibc sources and sa_flags is an
int on all Linux arches.

Thanks,
James

gcc/ada/Changelog:

2017-03-10  James Cowgill  <James.Cowgill@imgtec.com>

	* s-osinte-linux.ads (struct_sigaction): Use correct type for sa_flags.


diff --git a/gcc/ada/s-osinte-linux.ads b/gcc/ada/s-osinte-linux.ads
index ee1809e2ec1..b0ba2296398 100644
--- a/gcc/ada/s-osinte-linux.ads
+++ b/gcc/ada/s-osinte-linux.ads
@@ -182,7 +182,7 @@ package System.OS_Interface is
    type struct_sigaction is record
       sa_handler  : System.Address;
       sa_mask     : sigset_t;
-      sa_flags    : Interfaces.C.unsigned_long;
+      sa_flags    : int;
       sa_restorer : System.Address;
    end record;
    pragma Convention (C, struct_sigaction);
@@ -607,8 +607,7 @@ private
    for struct_sigaction use record
       sa_handler at Linux.sa_handler_pos range 0 .. Standard'Address_Size - 1;
       sa_mask    at Linux.sa_mask_pos    range 0 .. 1023;
-      sa_flags   at Linux.sa_flags_pos
-        range 0 .. Interfaces.C.unsigned_long'Size - 1;
+      sa_flags   at Linux.sa_flags_pos   range 0 .. int'Size - 1;
    end record;
    --  We intentionally leave sa_restorer unspecified and let the compiler
    --  append it after the last field, so disable corresponding warning.
-- 
2.11.0

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] [ADA] Fix bootstrap failure on mips64el-linux-gnuabi64
  2017-03-10 17:38 [PATCH] [ADA] Fix bootstrap failure on mips64el-linux-gnuabi64 James Cowgill
@ 2017-03-11 12:11 ` Arnaud Charlet
  2017-03-13 17:26   ` James Cowgill
  0 siblings, 1 reply; 4+ messages in thread
From: Arnaud Charlet @ 2017-03-11 12:11 UTC (permalink / raw)
  To: James Cowgill; +Cc: gcc-patches, Arnaud Charlet

> This patch fixes an error caused by my changing of the signal constants
> on MIPS in r244026. While that patch worked on mipsel, ada fails to
> bootstrap with it on mips64el with the error:
> 
> s-osinte.ads:610:07: component "sa_flags" overlaps "sa_handler" at
> line 608
> ../gcc-interface/Makefile:297: recipe for target 'a-dispat.o' failed
> make[9]: *** [a-dispat.o] Error 1
> 
> The fix is to adjust the size of sa_flags in struct_sigaction from an
> unsigned long to an int. I checked the glibc sources and sa_flags is an
> int on all Linux arches.

Patch is OK, thanks.

> gcc/ada/Changelog:
> 
> 2017-03-10  James Cowgill  <James.Cowgill@imgtec.com>
> 
> 	* s-osinte-linux.ads (struct_sigaction): Use correct type for
> 	sa_flags.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] [ADA] Fix bootstrap failure on mips64el-linux-gnuabi64
  2017-03-11 12:11 ` Arnaud Charlet
@ 2017-03-13 17:26   ` James Cowgill
  2017-03-14  9:26     ` Matthias Klose
  0 siblings, 1 reply; 4+ messages in thread
From: James Cowgill @ 2017-03-13 17:26 UTC (permalink / raw)
  To: Arnaud Charlet; +Cc: gcc-patches

Hi,

On 11/03/17 12:11, Arnaud Charlet wrote:
>> This patch fixes an error caused by my changing of the signal constants
>> on MIPS in r244026. While that patch worked on mipsel, ada fails to
>> bootstrap with it on mips64el with the error:
>>
>> s-osinte.ads:610:07: component "sa_flags" overlaps "sa_handler" at
>> line 608
>> ../gcc-interface/Makefile:297: recipe for target 'a-dispat.o' failed
>> make[9]: *** [a-dispat.o] Error 1
>>
>> The fix is to adjust the size of sa_flags in struct_sigaction from an
>> unsigned long to an int. I checked the glibc sources and sa_flags is an
>> int on all Linux arches.
> 
> Patch is OK, thanks.

Can you commit it for me?

James

>> gcc/ada/Changelog:
>>
>> 2017-03-10  James Cowgill  <James.Cowgill@imgtec.com>
>>
>> 	* s-osinte-linux.ads (struct_sigaction): Use correct type for
>> 	sa_flags.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] [ADA] Fix bootstrap failure on mips64el-linux-gnuabi64
  2017-03-13 17:26   ` James Cowgill
@ 2017-03-14  9:26     ` Matthias Klose
  0 siblings, 0 replies; 4+ messages in thread
From: Matthias Klose @ 2017-03-14  9:26 UTC (permalink / raw)
  To: James Cowgill, Arnaud Charlet; +Cc: gcc-patches

On 13.03.2017 18:26, James Cowgill wrote:
> Hi,
> 
> On 11/03/17 12:11, Arnaud Charlet wrote:
>>> This patch fixes an error caused by my changing of the signal constants
>>> on MIPS in r244026. While that patch worked on mipsel, ada fails to
>>> bootstrap with it on mips64el with the error:
>>>
>>> s-osinte.ads:610:07: component "sa_flags" overlaps "sa_handler" at
>>> line 608
>>> ../gcc-interface/Makefile:297: recipe for target 'a-dispat.o' failed
>>> make[9]: *** [a-dispat.o] Error 1
>>>
>>> The fix is to adjust the size of sa_flags in struct_sigaction from an
>>> unsigned long to an int. I checked the glibc sources and sa_flags is an
>>> int on all Linux arches.
>>
>> Patch is OK, thanks.
> 
> Can you commit it for me?

I committed the patch.

Matthias

>>> gcc/ada/Changelog:
>>>
>>> 2017-03-10  James Cowgill  <James.Cowgill@imgtec.com>
>>>
>>> 	* s-osinte-linux.ads (struct_sigaction): Use correct type for
>>> 	sa_flags.
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2017-03-14  9:26 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-10 17:38 [PATCH] [ADA] Fix bootstrap failure on mips64el-linux-gnuabi64 James Cowgill
2017-03-11 12:11 ` Arnaud Charlet
2017-03-13 17:26   ` James Cowgill
2017-03-14  9:26     ` Matthias Klose

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).