I am trying to port some code to Linux using your compiler. Currently, the make process takes as input a C++ program with imbedded SQL. It does a pre-process run (-E) against the file so all the current includes are expanded. It takes that output and does a DB2 prep and bind. It takes the output file from the DB2 prep which now has another include listed and then does the real compile. The problem is that the original includes caused ydefs.h to be expanded into the program, but the protective #define _YVALS is not there. The DB2 include causes stddefs.h to be included which causes yvals.h to be included again. Consequently, I am getting the error:
invalid redeclaration of type name "_Mbstatet" (declared at line 260 of "/opt/intel/compiler70/ia32/include/yvals.h")
Do you have any suggestions on how I can prevent this from happening?