Bob Proulx wrote:
> That seemed to mostly work. It is still failing under ia64 though. I
> think the compiler there has no support for restrict. If I define
> restrict to be nothing to disable it completely then the compilation
> succeeds.
> ...
> So apparently the configure test for a working restrict is not
> catching this case.
The HP-UX ia64 compiler does support __restrict fine. The configure
test is detecting this correctly. That turns out not to be the
problem.
The problem is that regex.h is defining "__restrict" to be "restrict"!
The regex.h code is:
/* GCC 2.95 and later have "__restrict"; C99 compilers have
"restrict", and "configure" may have defined "restrict". */
#ifndef __restrict
# if ! (2 < __GNUC__ || (2 == __GNUC__ && 95 <= __GNUC_MINOR__))
# if defined restrict || 199901L <= __STDC_VERSION__
# define __restrict restrict
# else
# define __restrict
# endif
# endif
#endif
And of course config.h is defining "restrict" to be "__restrict".
#define restrict __restrict
That combination is obviously not good.
Bob