[Bug preprocessor/12847] [3.4 Regression] xxx.c:1:20: xxxx.h: No such file or directory

danglin at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Fri Oct 31 18:20:00 GMT 2003


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

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


danglin at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |neil at daikokuya dot co dot
                   |                            |uk, zack at codesourcery dot
                   |                            |com


------- Additional Comments From danglin at gcc dot gnu dot org  2003-10-31 17:45 -------
Problem found:

We have the following includes in cppfiles.c:

#include "config.h"
#include "system.h"
#include "cpplib.h"
#include "cpphash.h"
#include "intl.h"
#include "mkdeps.h"
#include "hashtab.h"
#include <dirent.h>

cpphash.h results in these includes:

# 29 "../../gcc/gcc/cpphash.h"
# 1 "/usr/include/iconv.h" 1 3 4
# 22 "/usr/include/iconv.h" 3 4
# 1 "/usr/include/dl.h" 1 3 4

dl.h defines the following "DL_" macros when using the 32-bit SOM port:

#define DL_OPEN         48
#define DL_CLOSE        52
#define DL_SYM          56
#define DL_ERROR        60

The define for DL_ERROR conflicts with the earlier define in cpplib.h:

/* An error.  */
#define DL_ERROR                0x03

I guess we must be suppressing warnings/errors from system headers, or
there is a problem with detecting redefined macros as I don't see any
warnings compiling cppfiles.c.

I also see the same problem under hpux 11.11, although it doesn't affect
the 64-bit port.



More information about the Gcc-bugs mailing list