libchill/memmove.c won't compile

Jeffrey A Law law@cygnus.com
Tue May 30 08:47:00 GMT 2000


  In message < 200005301400.PAA29176@cam-mail2.cambridge.arm.com >you write:
  > 
  > [Arghh!, Maybe this time I've got all the headers right.. ]
  > 
  > Zack,
  > 
  > Your patch
  > 	2000-05-29  Zack Weinberg  <zack@wolery.cumb.org>
  > 
  >         * concatstr.c, exh.c: Include stdlib.h and string.h.
  >         * delaycase.c, eqstr.c, memmove.c, printbuffer.c,
  >         printevent.c, sendbuffer.c, waitbuffer.c: Include string.h.
  > 
  > breaks a cross build on the ARM with Newlib, since the prototype for 
  > memmove in string.h conflicts with the function definition in memove.c
  > 
  > Why isn't the third argument of memmove (in libchill/memmove.c) of type 
  > size_t as required by the standard?
No clue, other than laziness I suspect.

I suspect we can just fix memmove.c to do something like this:

#include <ansidecl.h>
#ifdef __STDC__
#include <stddef.h>
#else
#define size_t unsigned long
#endif

Then size size_t as the 3rd argument.

[ That's what libiberty/memmove.c does. ]

Can you try that and see if it fixes your build?

jeff



More information about the Gcc-bugs mailing list