Jim Meyering wrote:
> Check out the red columns here:
> 
>   http://proulx.com:9000/
> 
> Maybe a system-provided mempcpy macro is causing trouble?
> ...
>         cc  -I.      -Ae -O -c mempcpy.c
> cc: "string.h", line 39: error 1000: Unexpected symbol: "__dest".
> cc: "string.h", line 39: error 1000: Unexpected symbol: "__src".
> cc: "string.h", line 39: error 1573: Type of "__src" is undefined due to an 
> illegal declaration.

Line 39 in the file is this:

  void *mempcpy (void *restrict __dest, void const *restrict __src, size_t __n);

But the HP-UX C compiler needs -AC99 in order to enable the restrict
keyword, according to this man page:

  man cc
  ...
      -Amode         Specify the compilation standard to be used by the
                     compiler.  mode can be one of the following letters:
  ...
      C99  This option needs to be used for C99 specific
           features. For example, it enables keywords like
           restrict and typeof to be recognized. Without
           this option, the keywords __restrict__ and
           __typeof__ need to be used instead.

If I force -AC99 then that file compiles.  I did not yet try a full
compilation that way.

Bob


Reply via email to