Next: , Previous: , Up: Problems with make   [Contents][Index]


8.2.7 ‘undefined type, found `DEFINE_____'

The GCC 2.95.2 compiler on at least one MacOS 10.1 system complains repeatedly about an ‘undefined type, found `DEFINE_____'’ while trying to preprocess a data file generated by makehelper.py and based upon the contents of config.h substitutions.dat. Fortunately, the complaint is only a warning and can be ignored. The problem is that the C preprocessor performs “smart preprocessing” if given a filename on the command line (as is the case here) but “basic preprocessing” when reading from the standard input device. Because the input does not represent syntactically correct C code—the C preprocessor is used only as a convenient device for performing macro substitutions—the syntax-aware smart preprocessing fails. However, the C preprocessor then reprocesses the file with basic preprocessing (as indicated by the message ‘cpp-precomp: warning: errors during smart preprocessing, retrying in basic mode’) and succeeds.

Scott Pakin, pakin@lanl.gov