1 /* Unless compiled with -DNO_OVERWRITE, this variant of s_copy allows the
2 * target of an assignment to appear on its right-hand side (contrary
3 * to the Fortran 77 Standard, but in accordance with Fortran 90),
4 * as in a(2:5) = a(4:7) .
9 /* assign strings: a = b */
12 s_copy (register char *a
, register char *b
, ftnlen la
, ftnlen lb
)
14 register char *aend
, *bend
;
20 if (a
<= b
|| a
>= b
+ la
)
26 for (b
+= la
; a
< aend
;)
34 if (a
<= b
|| a
>= bend
)