X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/7b9c35c85e991f6ee67e5f19ea7c8bf43c9e72c4..492cc5d3c87c6166648027f284686e48c02d48f9:/usr/src/usr.bin/pascal/libpc/FCALL.c diff --git a/usr/src/usr.bin/pascal/libpc/FCALL.c b/usr/src/usr.bin/pascal/libpc/FCALL.c index e9e88b63f1..ab5f0bc40a 100644 --- a/usr/src/usr.bin/pascal/libpc/FCALL.c +++ b/usr/src/usr.bin/pascal/libpc/FCALL.c @@ -1,21 +1,16 @@ /* Copyright (c) 1979 Regents of the University of California */ -static char sccsid[] = "@(#)FCALL.c 1.1 %G%"; +static char sccsid[] = "@(#)FCALL.c 1.2 %G%"; #include "h00vars.h" +long * FCALL(frtn) register struct formalrtn *frtn; { - register struct display *dp; - register struct display *ds; - struct display *limit; - - limit = &frtn->disp[2 * frtn->cbn]; - for (dp = &_disply[1], ds = &frtn->disp[frtn->cbn]; ds < limit; ) - *ds++ = *dp++; - limit = &frtn->disp[frtn->cbn]; - for (ds = &frtn->disp[0], dp = &_disply[1]; ds < limit; ) - *dp++ = *ds++; - return (long)(frtn->entryaddr); + blkcpy(frtn->cbn * sizeof(struct display), + &_disply[1], &frtn->disp[frtn->cbn]); + blkcpy(frtn->cbn * sizeof(struct display), + &frtn->disp[0], &_disply[1]); + return (long *)(frtn->entryaddr); }