Paul Eggert wrote: > > Therefore I propose to remove this paragraph: > > > > -You should include Gnulib-provided headers before system headers, > > -so that Gnulib-provided headers can adjust how a system header > > -behaves. > > That sounds good; thanks.
OK, I removed it and expanded a bit more on the previous paragraph's topic: *** doc/gnulib-tool.texi 1 Mar 2007 21:24:55 -0000 1.11 --- doc/gnulib-tool.texi 2 Mar 2007 01:14:46 -0000 *************** *** 235,244 **** @samp{restrict} to be the empty string on a pre-C99 host, or a macro like @samp{_FILE_OFFSET_BITS} that affects the layout of data structures, the definition is consistent for all include files. ! ! You should include Gnulib-provided headers before system headers, ! so that Gnulib-provided headers can adjust how a system header ! behaves. A final word of warning: Gnulib currently assumes it will be responsible for @emph{all} functions that end up in the Autoconf --- 235,244 ---- @samp{restrict} to be the empty string on a pre-C99 host, or a macro like @samp{_FILE_OFFSET_BITS} that affects the layout of data structures, the definition is consistent for all include files. ! Another reason why @file{config.h} must be included before any other ! include file is that it may define macros like @samp{_GNU_SOURCE} ! or @samp{_FILE_OFFSET_BITS} which, on glibc systems, have an effect only ! if defined before the first system header file is included. A final word of warning: Gnulib currently assumes it will be responsible for @emph{all} functions that end up in the Autoconf