There is a problem with the 32/64-bit file i/o compatibility macros defined in adaint.h: they clash with some of newlib's definitions.
cc1: warnings being treated as errors In file included from /gnu/gcc/gcc-patched/gcc/ada/cstreams.c:47:0: /gnu/gcc/gcc-patched/gcc/ada/adaint.h:58:0: error: "FOPEN" redefined /usr/include/sys/_default_fcntl.h:95:0: note: this is the location of the previo us definition make[3]: *** [ada/cstreams.o] Error 1 make[3]: Leaving directory `/gnu/gcc/obj-patched/gcc' make[2]: *** [all-stage2-gcc] Error 2 make[2]: Leaving directory `/gnu/gcc/obj-patched' make[1]: *** [stage2-bubble] Error 2 make[1]: Leaving directory `/gnu/gcc/obj-patched' make: *** [all] Error 2 More info in follow-on comments. -- Summary: Ada broken on newlib-based platforms. Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: davek at gcc dot gnu dot org GCC build triplet: i686-pc-cygwin GCC host triplet: i686-pc-cygwin GCC target triplet: i686-pc-cygwin http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40857