/* Get the compiler's limits.h, which defines almost all the ISO constants.
We put this #include_next outside the double inclusion check because
it should be possible to include this file more than once and still get
the definitions from gcc's header. */
#if defined __GNUC__ && !defined _GCC_LIMITS_H_
/* `_GCC_LIMITS_H_' is what GCC's file defines. */
# include_next <limits.h>
#endif
2条答案
按热度按时间vhipe2zx1#
是的,它是limits. h,因为它在第123行递归地包含了自己:
因此,解决方案是将parse=none选项传递给Pro*C预编译器:
或者,第二种选择:你可以先用c预编译器预编译你的源代码以得到pc文件:
然后,您将获得limits. h解析,而无需递归。
需要-P选项,因为ProC程序可能与线标记混淆。
需要-E选项,因为ProC是一个容易与非传统输出混淆的程序。
kpbwa7wx2#
另一种选择是在proc阶段排除有问题的头文件,并在编译阶段包含它。
方法是向proc命令添加一个标志
define=IN_PROC
,并在pc文件中用以下内容 Package 有问题的头:这为我解决了问题