Skip to content

Commit e89411b

Browse files
committed
update prototype definition for gcc-15
1 parent bbe4055 commit e89411b

35 files changed

+168
-165
lines changed

lisp/Makefile.Linux64

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ GCC3=-DGCC3
4444

4545
MACHINE=x86_64
4646
DEBUG= -g
47-
WFLAGS= #-Wall -Wno-unused -Wno-switch -Wno-return-type
47+
WFLAGS= -Wno-old-style-definition #-Wall -Wno-unused -Wno-switch -Wno-return-type
4848

4949
CFLAGS= $(WFLAGS) -fPIC -D$(MACHINE) -DLinux -D_REENTRANT -DVERSION=\"$(VERSION)\" \
5050
-DLIB6 $(ALIGN_FUNCTIONS) \

lisp/c/arith.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@ static char *rcsid="@(#)$Id$";
1818
extern int ffsl(long int i); // #include <string.h> // ffsl
1919

2020
extern pointer RANDSTATE;
21-
extern int gcd();
22-
extern pointer makeratio();
23-
24-
extern pointer copy_big(), big_plus(), big_minus();
25-
extern void sub_int_big(), add_int_big();
26-
extern pointer add_big_big(), big_times();
27-
extern pointer makebig(), makebig1(), makebig2(), extend_big(pointer,int);
28-
extern pointer normalize_bignum();
21+
extern int gcd(int,int);
22+
extern pointer makeratio(int,int);
23+
24+
extern pointer copy_big(pointer), big_plus(pointer,pointer), big_minus(pointer);
25+
extern void sub_int_big(eusinteger_t,pointer), add_int_big(eusinteger_t,pointer);
26+
extern pointer add_big_big(pointer,pointer), big_times(pointer,pointer);
27+
extern pointer makebig(int), makebig1(long), makebig2(long,long), extend_big(pointer,int);
28+
extern pointer normalize_bignum(pointer);
2929
extern eusfloat_t big_to_float(pointer);
3030
extern pointer eusfloat_to_big(float);
3131
extern eusinteger_t big_sign(pointer);
@@ -1426,7 +1426,7 @@ register pointer argv[];
14261426
eusinteger_t imax,irandval;
14271427
eusfloat_t fmax,frandval;
14281428
double randval;
1429-
double erand48();
1429+
double erand48(unsigned short*);
14301430
#if news || sanyo
14311431
long random();
14321432
#endif

lisp/c/big.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ static char *rcsid="@(#)$Id$";
2121
#define ltz(x) ((x)<0)
2222
#define gez(x) ((x)>=0)
2323

24-
extern pointer makebig();
24+
extern pointer makebig(int);
2525

2626
#if (WORD_SIZE == 64)
2727

lisp/c/eus.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ int ehbypass;
163163
pointer charmacro[256];
164164
pointer sharpmacro[256];
165165

166-
extern pointer defvector();
166+
extern pointer defvector(context *, char *, pointer, int, int);
167167
static pointer reploop(context *, char *);
168168

169169
pointer ALLOWOTHERKEYS,K_ALLOWOTHERKEYS;
@@ -269,7 +269,7 @@ char *errmsg[100]={
269269
"E_END",
270270
};
271271

272-
static pointer brkloop();
272+
static pointer brkloop(context*,char*);
273273

274274
void unwind(ctx,p)
275275
register context *ctx;
@@ -1145,7 +1145,7 @@ register context *ctx;
11451145
int i,j;
11461146
char *eusdir, *eusrt;
11471147
char fname[1024];
1148-
extern pointer SRCLOAD();
1148+
extern pointer SRCLOAD(context*,int,pointer*);
11491149

11501150
/* reset stack pointer and frame pointers*/
11511151
j=(int)eussetjmp(topjbuf);
@@ -1266,15 +1266,15 @@ register context *ctx;
12661266
ctx->vsp=ctx->stack;
12671267
configure_eus(ctx);
12681268

1269-
signal(SIGCHLD, (void (*)())eusint);
1270-
signal(SIGFPE, (void (*)())eusint);
1271-
signal(SIGPIPE, (void (*)())eusint);
1269+
signal(SIGCHLD, (void (*)(int))eusint);
1270+
signal(SIGFPE, (void (*)(int))eusint);
1271+
signal(SIGPIPE, (void (*)(int))eusint);
12721272
#ifdef RGC
1273-
// signal(SIGSEGV, (void (*)())eusint); /* for debugging. R.Hanai */
1273+
// signal(SIGSEGV, (void (*)(int))eusint); /* for debugging. R.Hanai */
12741274
#else
1275-
signal(SIGSEGV, (void (*)())eusint);
1275+
signal(SIGSEGV, (void (*)(int))eusint);
12761276
#endif
1277-
signal(SIGBUS, (void (*)())eusint);
1277+
signal(SIGBUS, (void (*)(int))eusint);
12781278

12791279
toplevel(ctx,mainargc,mainargv);
12801280

lisp/c/eus.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1050,7 +1050,7 @@ extern pointer makebuffer(int);
10501050
extern pointer makevector(pointer, int);
10511051
extern pointer makeclass(context *, pointer, pointer, pointer,pointer, pointer,
10521052
int, pointer);
1053-
extern pointer makecode(pointer, pointer(*)(), pointer);
1053+
extern pointer makecode(pointer, pointer(*)(context*,int,pointer*), pointer);
10541054
extern pointer makematrix(context *, int, int);
10551055
extern pointer makeobject(pointer);
10561056
extern pointer rawcons(context *, pointer, pointer);
@@ -1100,7 +1100,7 @@ extern pointer reader(context *, pointer, pointer);
11001100
extern pointer prinx(context *, pointer, pointer);
11011101

11021102
/*for compiled code*/
1103-
extern pointer makeclosure(pointer,pointer,pointer(*)(),pointer, pointer*, pointer*);
1103+
extern pointer makeclosure(pointer,pointer,pointer(*)(context*,int,pointer*,pointer),pointer, pointer*, pointer*);
11041104
extern pointer fcall();
11051105
extern pointer xcar(pointer), xcdr(pointer), xcadr(pointer);
11061106
extern pointer *ovafptr(pointer,pointer);

lisp/c/eus_proto.h

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ extern pointer SUBCLASSP(context */*ctx*/, int /*n*/, pointer /*argv*/*);
207207
extern pointer DERIVEDP(context */*ctx*/, int /*n*/, pointer /*argv*/*);
208208
extern pointer ENTERCLASS(context */*ctx*/, int /*n*/, pointer /*argv*/*);
209209
extern void addmethod(context */*ctx*/, pointer /*meth*/, pointer /*class*/, pointer /*doc*/);
210-
extern void addcmethod(context */*ctx*/, pointer /*mod*/, pointer (*/*cfunc*/)(), pointer /*sel*/, pointer /*class*/, pointer /*doc*/);
210+
extern void addcmethod(context */*ctx*/, pointer /*mod*/, pointer (*/*cfunc*/)(context*,int,pointer*), pointer /*sel*/, pointer /*class*/, pointer /*doc*/);
211211
extern pointer DEFMETHOD(context */*ctx*/, pointer /*arg*/);
212212
extern pointer INSTANTIATE(context */*ctx*/, int /*n*/, pointer /*argv*/*);
213213
extern pointer findmethod(context */*ctx*/, pointer /*sel*/, pointer /*search*/, pointer */*curclass*/);
@@ -295,15 +295,15 @@ extern pointer NBUTLAST(context */*ctx*/, int /*n*/, pointer /*argv*/*);
295295
extern void lists(context */*ctx*/, pointer /*mod*/);
296296
/* loadelf.c */
297297
extern pointer SRCLOAD(context */*ctx*/, int /*n*/, pointer /*argv*/*);
298-
extern void add_module_initializer(char */*name*/, pointer (*/*entry*/)());
298+
extern void add_module_initializer(char */*name*/, pointer (*/*entry*/)(context*,int,pointer*));
299299
extern void exec_module_initializers(context */*ctx*/);
300300
extern pointer list_module_initializers(context */*ctx*/, pointer /*initnames*/);
301301
extern pointer list_module_initializers2(context */*ctx*/, int /*n*/, pointer */*argv*/);
302302
extern pointer build_quote_vector(context */*ctx*/, int /*size*/, char */*strings*/*);
303303
extern pointer eval_c_strings(context */*ctx*/, int /*size*/, const char */*strings*/*);
304304
extern pointer FIND_ENTRY(context */*ctx*/, int /*n*/, pointer /*argv*/*);
305305
extern pointer FIND_ENTRY2(context */*ctx*/, int /*n*/, pointer /*argv*/*);
306-
extern pointer SYSMOD(void);
306+
extern pointer SYSMOD(context */*ctx*/, int /*n*/, pointer /*argv*/*);
307307
extern pointer UNBINLOAD(context */*ctx*/, int /*n*/, pointer */*argv*/);
308308
extern pointer BINLOAD(context */*ctx*/, int /*n*/, pointer */*argv*/);
309309
extern pointer SAVE(context */*ctx*/, int /*n*/, pointer /*argv*/*);
@@ -326,7 +326,7 @@ extern pointer makepkg(context */*ctx*/, pointer /*namestr*/, pointer /*nicks*/,
326326
extern pointer mkstream(context */*ctx*/, pointer /*dir*/, pointer /*string*/);
327327
extern pointer mkfilestream(context */*ctx*/, pointer /*dir*/, pointer /*string*/, int /*fno*/, pointer /*fname*/);
328328
extern pointer mkiostream(context */*ctx*/, pointer /*in*/, pointer /*out*/);
329-
extern pointer makecode(pointer /*mod*/, pointer (*/*f*/)(), pointer /*ftype*/);
329+
extern pointer makecode(pointer /*mod*/, pointer (*/*f*/)(context*,int,pointer*), pointer /*ftype*/);
330330
extern void bumpcix(int /*m*/, int /*n*/);
331331
extern void recixobj(int /*newcix*/);
332332
extern void resetcix(pointer /*class*/, cixpair */*p*/);
@@ -338,24 +338,24 @@ extern pointer makefvector(int /*s*/);
338338
extern pointer defvector(context */*ctx*/, char */*name*/, pointer /*super*/, int /*elm*/, int /*size*/);
339339
extern pointer makematrix(context */*ctx*/, int /*row*/, int /*column*/);
340340
extern pointer makemodule(context */*ctx*/, int /*size*/);
341-
extern pointer makeclosure(pointer /*code*/, pointer /*quote*/, pointer (*/*f*/)(), pointer /*e0*/, pointer */*e1*/, pointer */*e2*/);
341+
extern pointer makeclosure(pointer /*code*/, pointer /*quote*/, pointer (*/*f*/)(context*,int,pointer*,pointer), pointer /*e0*/, pointer */*e1*/, pointer */*e2*/);
342342
extern pointer makereadtable(context */*ctx*/);
343343
extern pointer makelabref(pointer /*n*/, pointer /*v*/, pointer /*nxt*/);
344344
extern pointer makeratio(int /*num*/, int /*denom*/);
345345
extern pointer makebig(int /*n*/);
346346
extern pointer makebig1(long /*x*/);
347347
extern pointer makebig2(long /*hi*/, long /*lo*/);
348-
extern pointer defun(context */*ctx*/, char */*name*/, pointer /*mod*/, pointer (*/*f*/)(), char * /*doc*/);
349-
extern pointer defunpkg(context */*ctx*/, char */*name*/, pointer /*mod*/, pointer (*/*f*/)(), pointer /*pkg*/);
350-
extern pointer defmacro(context */*ctx*/, char */*name*/, pointer /*mod*/, pointer (*/*f*/)());
348+
extern pointer defun(context */*ctx*/, char */*name*/, pointer /*mod*/, pointer (*/*f*/)(context*,int,pointer*), char * /*doc*/);
349+
extern pointer defunpkg(context */*ctx*/, char */*name*/, pointer /*mod*/, pointer (*/*f*/)(context*,int,pointer*), pointer /*pkg*/);
350+
extern pointer defmacro(context */*ctx*/, char */*name*/, pointer /*mod*/, pointer (*/*f*/)(context*,int,pointer*));
351351
extern int special_index(void);
352-
extern pointer defspecial(context */*ctx*/, char */*name*/, pointer /*mod*/, pointer (*/*f*/)());
352+
extern pointer defspecial(context */*ctx*/, char */*name*/, pointer /*mod*/, pointer (*/*f*/)(context*,pointer));
353353
extern pointer defconst(context */*ctx*/, char */*name*/, pointer /*val*/, pointer /*pkg*/);
354354
extern pointer defvar(context */*ctx*/, char */*name*/, pointer /*val*/, pointer /*pkg*/);
355355
extern pointer deflocal(context */*ctx*/, char */*name*/, pointer /*val*/, pointer /*pkg*/);
356356
extern pointer defkeyword(context */*ctx*/, char */*name*/);
357-
extern pointer compfun(context */*ctx*/, pointer /*sym*/, pointer /*mod*/, pointer (*/*entry*/)(), pointer /*doc*/);
358-
extern pointer compmacro(context */*ctx*/, pointer /*sym*/, pointer /*mod*/, pointer (*/*entry*/)(), pointer /*doc*/);
357+
extern pointer compfun(context */*ctx*/, pointer /*sym*/, pointer /*mod*/, pointer (*/*entry*/)(context*,int,pointer*), pointer /*doc*/);
358+
extern pointer compmacro(context */*ctx*/, pointer /*sym*/, pointer /*mod*/, pointer (*/*entry*/)(context*,int,pointer*), pointer /*doc*/);
359359
extern struct blockframe *makeblock(context */*ctx*/, pointer /*kind*/, pointer /*name*/, jmp_buf */*jbuf*/, struct blockframe */*link*/);
360360
extern struct fletframe *makeflet(context */*ctx*/, pointer /*nm*/, pointer /*def*/, struct fletframe */*scp*/, struct fletframe */*link*/);
361361
extern void mkcatchframe(context */*ctx*/, pointer /*lab*/, jmp_buf */*jbuf*/);extern void allocate_stack(context */*ctx*/, int /*n*/);

lisp/c/eus_thr.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ typedef struct _rwlock {
109109
/* lwp functions are redefined to mthread functions by H.Nakagaki */
110110
extern unsigned int thr_self();
111111
extern int thr_getprio(int tid, int *prio);
112-
extern int thr_create(void *, size_t, void (*)(), void *, long, int *);
112+
extern int thr_create(void *, size_t, void (*)(void *), void *, long, int *);
113113
extern int thr_setprio(int, int);
114114
extern int thr_continue(int);
115115
extern int thr_suspend(int);

lisp/c/eusioctl.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,7 @@ register pointer mod;
283283
#endif
284284
defunpkg(ctx,"TCGETA",mod,IOCTL_TCGETA,unixpkg);
285285
defunpkg(ctx,"TCSETA",mod,IOCTL_TCSETA,unixpkg);
286-
defunpkg(ctx,"TCSETAW",mod,IOCTL_TCSETAW,unixpkg);
286+
defunpkg(ctx,"TCSETAW",mod,(pointer(*)(context*,int,pointer*))IOCTL_TCSETAW,unixpkg);
287287
defunpkg(ctx,"TCSETAF",mod,IOCTL_TCSETAF,unixpkg);
288288
#endif
289289
defunpkg(ctx,"TCGETATTR",mod,TCGETATTR,unixpkg);

lisp/c/eusstream.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ char *fname;
3333
int dir,acsmode,size;
3434
{ int fd,flag;
3535
pointer s,si,so,fnamep;
36-
extern pointer mkiostream();
36+
extern pointer mkiostream(context*,pointer,pointer);
3737
fd=open(fname, dir, acsmode);
3838
if (fd<0) return(NULL);
3939
fnamep=makestring(fname,strlen(fname));

lisp/c/eval.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1411,7 +1411,7 @@ pointer funcode(ctx,func,args,noarg)
14111411
register context *ctx;
14121412
register pointer func,args;
14131413
register int noarg;
1414-
{ register pointer (*subr)();
1414+
{ register pointer (*subr)(context*,int,pointer*);
14151415
register pointer *argp=ctx->vsp;
14161416
register int n=0;
14171417
register eusinteger_t addr;
@@ -1431,7 +1431,7 @@ register int noarg;
14311431
#endif
14321432
}
14331433
#endif
1434-
subr=(pointer (*)())(addr);
1434+
subr=(pointer (*)(context*,int,pointer*))(addr);
14351435
#ifdef FUNCODE_DEBUG
14361436
printf( "funcode:func = " ); hoge_print( func );
14371437
printf( "funcode:args = " ); hoge_print( args );
@@ -1447,7 +1447,7 @@ register int noarg;
14471447
else return((*subr)(ctx,n,argp));}
14481448
else if (pisfcode(func))
14491449
return(call_foreign((eusinteger_t (*)())subr,func,noarg,(pointer *)args));
1450-
else return((*subr)(ctx,noarg,args,0));
1450+
else return(((pointer (*)(context*,int,pointer,int))subr)(ctx,noarg,args,0));
14511451
break;
14521452
case (eusinteger_t)SUBR_MACRO:/* ???? */
14531453
if (noarg>=0) error(E_ILLFUNC);
@@ -1458,7 +1458,7 @@ register int noarg;
14581458
return(eval(ctx,tmp));
14591459
case (eusinteger_t)SUBR_SPECIAL: /* ???? */
14601460
if (noarg>=0) error(E_ILLFUNC);
1461-
else return((*subr)(ctx,args));
1461+
else return(((pointer (*)(context*,pointer))subr)(ctx,args));
14621462
/* case (int)SUBR_ENTRY:
14631463
func=(*subr)(func);
14641464
return(makeint(func)); */
@@ -1476,7 +1476,7 @@ int noarg;
14761476
register struct callframe *vf=(struct callframe *)(ctx->vsp);
14771477
struct specialbindframe *sbfps=ctx->sbindfp;
14781478
register int n=0,i;
1479-
register pointer (*subr)();
1479+
register pointer (*subr)(context*,int,pointer*,pointer);
14801480
struct fletframe *oldfletfp=ctx->fletfp, *fenv;
14811481
GC_POINT;
14821482
/* evalhook */
@@ -1524,9 +1524,9 @@ int noarg;
15241524
fn=func;
15251525
if (fn->c.code.subrtype!=SUBR_FUNCTION) error(E_ILLFUNC);
15261526
#if (WORD_SIZE == 64)
1527-
subr=(pointer (*)())((eusinteger_t)(fn->c.code.entry) & ~3L /*0xfffffffc ????*/);
1527+
subr=(pointer (*)(context*,int,pointer*,pointer))((eusinteger_t)(fn->c.code.entry) & ~3L /*0xfffffffc ????*/);
15281528
#else
1529-
subr=(pointer (*)())((eusinteger_t)(fn->c.code.entry) & ~3 /*0xfffffffc ????*/);
1529+
subr=(pointer (*)(context*,int,pointer*,pointer))((eusinteger_t)(fn->c.code.entry) & ~3 /*0xfffffffc ????*/);
15301530
#endif
15311531
#if ARM
15321532
register eusinteger_t addr;
@@ -1543,7 +1543,7 @@ int noarg;
15431543
addr = addr | (intval(fn->c.code.entry2)&0x0000ffff);
15441544
#endif
15451545
}
1546-
subr=(pointer (*)())(addr);
1546+
subr=(pointer (*)(context*,int,pointer*,pointer))(addr);
15471547
#endif
15481548
#if !Solaris2 && !SunOS4_1 && !Linux && !IRIX && !IRIX6 && !alpha && !Cygwin
15491549
if ((char *)subr>maxmemory) {
@@ -1554,7 +1554,7 @@ int noarg;
15541554
while (iscons(args)) {
15551555
vpush(eval(ctx,ccar(args))); args=ccdr(args); n++; GC_POINT;}
15561556
result=(*subr)(ctx,n,argp,func);} /*call func with env*/
1557-
else result=(*subr)(ctx,noarg,args,func);
1557+
else result=(*subr)(ctx,noarg,(pointer*)args,func);
15581558
/*recover call frame and stack pointer*/
15591559
ctx->vsp=(pointer *)vf;
15601560
ctx->callfp= vf->vlink;

0 commit comments

Comments
 (0)