[Bug regression/18643] New: fixincludes breaks RTEMS

corsepiu at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Wed Nov 24 04:12:00 GMT 2004


Some probably fixincludes-related change between 2004-11-17 and 2004-11-23 on
has broken gcc-3.4-branch for all RTEMS-targets and may-be for all newlib-based
targets in general.

Unlike before 2004-11-23, now bootstrapping GCC-3.4.x + newlib one-tree style,
produces a limits.h that is unusable for RTEMS.

This is the diff between the limits.h from of GCC-3.4.4pre (2004-11-23) and a
GCC-3.4.4pre (2004-11-17) toolchains:
diff -u \
/opt/rtems-4.7/lib/gcc/avr-rtems4.7/3.4.4/include/limits.h \
/opt/rtems-4.7/lib/gcc/m68k-rtems4.7/3.4.4/include/limits.h

--- /opt/rtems-4.7/lib/gcc/avr-rtems4.7/3.4.4/include/limits.h  2004-11-23
19:10:36.000000000 +0100
+++ /opt/rtems-4.7/lib/gcc/m68k-rtems4.7/3.4.4/include/limits.h 2004-11-18
06:39:55.000000000 +0100
@@ -1,3 +1,15 @@
+/* This administrivia gets added to the beginning of limits.h
+   if the system has its own version of limits.h.  */
+
+/* We use _GCC_LIMITS_H_ because we want this not to match
+   any macros that the system's limits.h uses for its own purposes.  */
+#ifndef _GCC_LIMITS_H_  /* Terminated in limity.h.  */
+#define _GCC_LIMITS_H_
+
+#ifndef _LIBC_LIMITS_H_
+/* Use "..." so that we find syslimits.h only in this same directory.  */
+#include "syslimits.h"
+#endif
 #ifndef _LIMITS_H___
 #define _LIMITS_H___

@@ -101,3 +113,13 @@
 #endif

 #endif /* _LIMITS_H___ */
+/* This administrivia gets added to the end of limits.h
+   if the system has its own version of limits.h.  */
+
+#else /* not _GCC_LIMITS_H_ */
+
+#ifdef _GCC_NEXT_LIMITS_H
+#include_next <limits.h>               /* recurse down to the real one */
+#endif
+
+#endif /* not _GCC_LIMITS_H_ */

As it seems to me, before this change, fixincludes was run, and now it doesn't
seem to be run anymore. AFAIK, theoretically newlib targets are supposed not to
require running fixincludes, so a bug that might have been present before might
have been fixed and now might break newlib for RTEMS.

-- 
           Summary: fixincludes breaks RTEMS
           Product: gcc
           Version: 3.4.4
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: regression
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: corsepiu at gcc dot gnu dot org
                CC: gcc-bugs at gcc dot gnu dot org,joel at oarcorp dot com
GCC target triplet: *-rtems*


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18643



More information about the Gcc-bugs mailing list