[M3commit] CVS Update: cm3
jkrell at elego.de
Tue Sep 3 10:18:49 CEST 2013
Changes by: jkrell at birch. 13/09/03 10:18:49
switch from strcpy to memcpy..because I more-or-less removed strcpy..
Perhaps revisit this.
Most of Cstring is wrapped in C.
That netted warnings/errors on OpenBSD if we wrapped strcpy and strcat.
From the linker.
So strcpy/strcat are left unwrapped. Usable from Modula-3.
However in the C backend, char_star ends up as void* and when we import
Cstring.strcat/strcpy as plain strcat/strcpy and go to declare them,
we get it wrong, and the C compiler might notice. So we change the names
to m3_strcpy/m3_strcat. The idea then being, we could provide m3_strcat/m3_strcpy
over in m3core/src/C or m3core/src/Csupport in a .c file.
But I didn't get around to that.
And it hasn't been needed.
And memcpy is probably faster, so just use it.
If people really want strcpy/strcat, we can provide them.
Note, they do work in the integrated backend and the gcc backend.
But not the C backend. And any use of them on OpenBSD will
get a linker warning or perhaps error.
More information about the M3commit