As David describes here:

   http://gcc.gnu.org/ml/gcc/2005-05/msg00807.html

having options.c include config.h, system.h, coretypes.h and tm.h
was causing a bootstrap failure on AIX.  The first of the two problems
was caused by options.c including <intl.h> before anything else.

The patch below changes the include order so that "intl.h"
is included after config.h and system.h, and is included using
quotes rather than angle brackets:

#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "tm.h"
#include "opts.h"
#include "intl.h"

This matches the convention used elsewhere in gcc (such as in toplev.c).

Tested by sanity-checking on i686-pc-linux-gnu.  David confirmed
that the new include order fixes the first problem.  Applied to
mainline as obvious.

Sorry once again for the breakage.

Richard


        * optc-gen.awk: Include intl.h after the externally-provided files.

Index: optc-gen.awk
===================================================================
RCS file: /cvs/gcc/gcc/gcc/optc-gen.awk,v
retrieving revision 2.7
diff -u -p -F^\([(a-zA-Z0-9_]\|#define\) -r2.7 optc-gen.awk
--- optc-gen.awk        16 May 2005 12:30:04 -0000      2.7
+++ optc-gen.awk        16 May 2005 18:13:00 -0000
@@ -56,11 +56,11 @@ BEGIN {
 END {
 print "/* This file is auto-generated by opts.sh.  */"
 print ""
-print "#include <intl.h>"
 n_headers = split(header_name, headers, " ")
 for (i = 1; i <= n_headers; i++)
        print "#include " quote headers[i] quote
 print "#include " quote "opts.h" quote
+print "#include " quote "intl.h" quote
 print ""
 
 for (i = 0; i < n_opts; i++) {

Reply via email to