From 255fb521da978916da0d4a2052d7941d950e2a6a Mon Sep 17 00:00:00 2001 From: Shenghou Ma <minux.ma@gmail.com> Date: Tue, 5 Feb 2013 21:43:04 +0800 Subject: [PATCH] cmd/dist: add -Wstrict-prototypes to CFLAGS and fix all the compiler errors Plan 9 compilers insist this but as we don't have Plan 9 builders, we'd better let gcc check the prototypes. Inspired by CL 7289050. R=golang-dev, seed, dave, rsc, lucio.dere CC=akumar, golang-dev https://golang.org/cl/7288056 --- src/cmd/5g/gg.h | 2 +- src/cmd/6g/gg.h | 2 +- src/cmd/8g/gg.h | 2 +- src/cmd/dist/build.c | 3 +++ src/cmd/ld/lib.h | 2 +- src/cmd/ld/macho.h | 2 +- src/cmd/prof/main.c | 8 ++++---- src/libmach/darwin.c | 2 +- 8 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/cmd/5g/gg.h b/src/cmd/5g/gg.h index fe427227c6..c45be79f41 100644 --- a/src/cmd/5g/gg.h +++ b/src/cmd/5g/gg.h @@ -84,7 +84,7 @@ void cgen_dcl(Node*); int needconvert(Type*, Type*); void genconv(Type*, Type*); void allocparams(void); -void checklabels(); +void checklabels(void); void ginscall(Node*, int); /* diff --git a/src/cmd/6g/gg.h b/src/cmd/6g/gg.h index df99c1a654..2c9a43ffe6 100644 --- a/src/cmd/6g/gg.h +++ b/src/cmd/6g/gg.h @@ -80,7 +80,7 @@ void cgen_dcl(Node*); int needconvert(Type*, Type*); void genconv(Type*, Type*); void allocparams(void); -void checklabels(); +void checklabels(void); void ginscall(Node*, int); int gen_as_init(Node*); void clearslim(Node*); diff --git a/src/cmd/8g/gg.h b/src/cmd/8g/gg.h index b67ca1f859..99f9952358 100644 --- a/src/cmd/8g/gg.h +++ b/src/cmd/8g/gg.h @@ -93,7 +93,7 @@ void cgen_dcl(Node*); int needconvert(Type*, Type*); void genconv(Type*, Type*); void allocparams(void); -void checklabels(); +void checklabels(void); void ginscall(Node*, int); /* diff --git a/src/cmd/dist/build.c b/src/cmd/dist/build.c index 533fafb3c1..afa0c470eb 100644 --- a/src/cmd/dist/build.c +++ b/src/cmd/dist/build.c @@ -398,6 +398,9 @@ setup(void) // gccargs is the gcc command line to use for compiling a single C file. static char *proto_gccargs[] = { "-Wall", + // native Plan 9 compilers don't like non-standard prototypes + // so let gcc catch them. + "-Wstrict-prototypes", "-Wno-sign-compare", "-Wno-missing-braces", "-Wno-parentheses", diff --git a/src/cmd/ld/lib.h b/src/cmd/ld/lib.h index c134729f66..d2a8b6fbef 100644 --- a/src/cmd/ld/lib.h +++ b/src/cmd/ld/lib.h @@ -182,7 +182,7 @@ void Lflag(char *arg); void usage(void); void adddynrel(Sym*, Reloc*); void adddynrela(Sym*, Sym*, Reloc*); -Sym* lookuprel(); +Sym* lookuprel(void); void ldobj1(Biobuf *f, char*, int64 len, char *pn); void ldobj(Biobuf*, char*, int64, char*, int); void ldelf(Biobuf*, char*, int64, char*); diff --git a/src/cmd/ld/macho.h b/src/cmd/ld/macho.h index f551041502..baea6ff03d 100644 --- a/src/cmd/ld/macho.h +++ b/src/cmd/ld/macho.h @@ -50,7 +50,7 @@ struct MachoDebug { uint32 filesize; }; -MachoHdr* getMachoHdr(); +MachoHdr* getMachoHdr(void); MachoSeg* newMachoSeg(char*, int); MachoSect* newMachoSect(MachoSeg*, char*); MachoLoad* newMachoLoad(uint32, uint32); diff --git a/src/cmd/prof/main.c b/src/cmd/prof/main.c index e6cc836bce..7a1d419611 100644 --- a/src/cmd/prof/main.c +++ b/src/cmd/prof/main.c @@ -426,14 +426,14 @@ addppword(uvlong pc) } void -startpptrace() +startpptrace(void) { ppstart = nppdata; addppword(~0); } void -endpptrace() +endpptrace(void) { ppdata[ppstart] = nppdata-ppstart-1; } @@ -644,7 +644,7 @@ compareleaf(const void *va, const void *vb) } void -dumphistogram() +dumphistogram(void) { int i, h, n; PC *x; @@ -699,7 +699,7 @@ struct Trace { }; void -dumppprof() +dumppprof(void) { uvlong i, n, *p, *e; int ntrace; diff --git a/src/libmach/darwin.c b/src/libmach/darwin.c index 63abde3136..753d940fdc 100644 --- a/src/libmach/darwin.c +++ b/src/libmach/darwin.c @@ -751,7 +751,7 @@ havet: static void* excthread(void *v) { - extern boolean_t exc_server(); + extern boolean_t exc_server(mach_msg_header_t *, mach_msg_header_t *); mach_msg_server(exc_server, 2048, excport, 0); return 0; } -- 2.30.9