http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60411
John Marino <gnugcc at marino dot st> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |gnugcc at marino dot st --- Comment #11 from John Marino <gnugcc at marino dot st> --- Eric, Thanks for these commits. However, I'm still unable to build arm-aux-linux-androideabi cross-compiler target after 209227. This is the current error: s-osinte.ads:593:07: component "sa_flags" overlaps "sa_mask" at line 592 This happens when a-dynpri.adb is being compiled. s-osinte.ads is s-osinte-android.ads of course. I think this is a direct consequence of #include <asm/signal.h> at sigtramp.h s-ointe-android.ads, lines 590-594: 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 .. Standard'Address_Size - 1; end record; asm/signal.h (NDK, API 15): typedef unsigned long sigset_t; struct sigaction { union { __sighandler_t _sa_handler; void (*_sa_sigaction)(int, struct siginfo *, void *); } _u; sigset_t sa_mask; unsigned long sa_flags; void (*sa_restorer)(void); }; So it does seem that struct_sigaction record isn't correct after all. John