C99 compatibility.

Get 99% of the way there for --std=c89 -pedantic for core files. Also cleans
up follow up warnings and others in tests.
This commit is contained in:
Robert Mustacchi 2011-07-07 18:25:52 -07:00 committed by Ryan Dahl
parent 786789490e
commit 8c00b369b4
12 changed files with 38 additions and 31 deletions

View File

@ -21,7 +21,8 @@
CC ?= $(PREFIX)gcc
AR ?= $(PREFIX)ar
E=
CFLAGS=--std=gnu89 -g
CSTDFLAG=--std=c89 -pedantic
CFLAGS=-g
CPPFLAGS += -Isrc/ev
LINKFLAGS=-lm
@ -80,13 +81,13 @@ uv.a: src/uv-unix.o src/uv-common.o src/uv-platform.o src/ev/ev.o src/uv-eio.o s
src/eio/eio.o $(CARES_OBJS)
src/uv-platform.o: src/$(UV_OS_FILE) include/uv.h include/uv-unix.h
$(CC) $(CPPFLAGS) $(CFLAGS) -c src/$(UV_OS_FILE) -o src/uv-platform.o
$(CC) $(CSTDFLAG) $(CPPFLAGS) $(CFLAGS) -c src/$(UV_OS_FILE) -o src/uv-platform.o
src/uv-unix.o: src/uv-unix.c include/uv.h include/uv-unix.h
$(CC) $(CPPFLAGS) -Ieio $(CFLAGS) -c src/uv-unix.c -o src/uv-unix.o
$(CC) $(CSTDFLAG) $(CPPFLAGS) -Ieio $(CFLAGS) -c src/uv-unix.c -o src/uv-unix.o
src/uv-common.o: src/uv-common.c include/uv.h include/uv-unix.h
$(CC) $(CPPFLAGS) $(CFLAGS) -c src/uv-common.c -o src/uv-common.o
$(CC) $(CSTDFLAG) $(CPPFLAGS) $(CFLAGS) -c src/uv-common.c -o src/uv-common.o
src/ev/ev.o: src/ev/ev.c
$(CC) $(CPPFLAGS) $(CFLAGS) -c src/ev/ev.c -o src/ev/ev.o -DEV_CONFIG_H=\"$(EV_CONFIG)\"
@ -101,7 +102,7 @@ src/eio/eio.o: src/eio/eio.c
$(CC) $(EIO_CPPFLAGS) $(CFLAGS) -c src/eio/eio.c -o src/eio/eio.o
src/uv-eio.o: src/uv-eio.c
$(CC) $(CPPFLAGS) -Isrc/eio/ $(CFLAGS) -c src/uv-eio.c -o src/uv-eio.o
$(CC) $(CPPFLAGS) -Isrc/eio/ $(CSTDFLAG) $(CFLAGS) -c src/uv-eio.c -o src/uv-eio.o
clean-platform:

View File

@ -176,7 +176,7 @@ enum
enum
{
EIO_MCL_CURRENT = 1,
EIO_MCL_FUTURE = 2,
EIO_MCL_FUTURE = 2
};
/* request priorities */
@ -184,7 +184,7 @@ enum
enum {
EIO_PRI_MIN = -4,
EIO_PRI_MAX = 4,
EIO_PRI_DEFAULT = 0,
EIO_PRI_DEFAULT = 0
};
/* eio request structure */

View File

@ -167,7 +167,7 @@ struct uv_req_s {
uv_req_type type;
/* public */
uv_handle_t* handle;
void* cb;
void *(*cb)(void *);
void* data;
/* private */
UV_REQ_PRIVATE_FIELDS
@ -176,7 +176,7 @@ struct uv_req_s {
/*
* Initialize a request for use with uv_write, uv_shutdown, or uv_connect.
*/
void uv_req_init(uv_req_t* req, uv_handle_t* handle, void* cb);
void uv_req_init(uv_req_t* req, uv_handle_t* handle, void *(*cb)(void *));
int uv_shutdown(uv_req_t* req);

View File

@ -996,7 +996,9 @@ int uv_write(uv_req_t* req, uv_buf_t bufs[], int bufcnt) {
memcpy(req->bufs, bufs, bufcnt * sizeof(uv_buf_t));
req->bufcnt = bufcnt;
// fprintf(stderr, "cnt: %d bufs: %p bufsml: %p\n", bufcnt, req->bufs, req->bufsml);
/*
* fprintf(stderr, "cnt: %d bufs: %p bufsml: %p\n", bufcnt, req->bufs, req->bufsml);
*/
req->write_index = 0;
tcp->write_queue_size += uv__buf_count(bufs, bufcnt);
@ -1096,7 +1098,7 @@ int uv_read_stop(uv_stream_t* stream) {
}
void uv_req_init(uv_req_t* req, uv_handle_t* handle, void* cb) {
void uv_req_init(uv_req_t* req, uv_handle_t* handle, void *(*cb)(void *)) {
uv_counters()->req_init++;
req->type = UV_UNKNOWN_REQ;
req->cb = cb;
@ -1556,6 +1558,7 @@ int uv_getaddrinfo(uv_getaddrinfo_t* handle,
const char* hostname,
const char* service,
const struct addrinfo* hints) {
eio_req* req;
uv_eio_init();
if (handle == NULL || cb == NULL ||
@ -1584,7 +1587,7 @@ int uv_getaddrinfo(uv_getaddrinfo_t* handle,
uv_ref();
eio_req* req = eio_custom(getaddrinfo_thread_proc, EIO_PRI_DEFAULT,
req = eio_custom(getaddrinfo_thread_proc, EIO_PRI_DEFAULT,
uv_getaddrinfo_done, handle);
assert(req);
assert(req->data == handle);

View File

@ -513,7 +513,7 @@ void uv_init() {
}
void uv_req_init(uv_req_t* req, uv_handle_t* handle, void* cb) {
void uv_req_init(uv_req_t* req, uv_handle_t* handle, void *(*cb)(void *)) {
uv_counters()->req_init++;
req->type = UV_UNKNOWN_REQ;
req->flags = 0;

View File

@ -82,7 +82,7 @@ static void after_read(uv_stream_t* handle, ssize_t nread, uv_buf_t buf) {
}
req = (uv_req_t*) malloc(sizeof *req);
uv_req_init(req, (uv_handle_t*)handle, after_shutdown);
uv_req_init(req, (uv_handle_t*)handle, (void *(*)(void *))after_shutdown);
uv_shutdown(req);
return;
@ -108,7 +108,7 @@ static void after_read(uv_stream_t* handle, ssize_t nread, uv_buf_t buf) {
wr = (write_req_t*) malloc(sizeof *wr);
uv_req_init(&wr->req, (uv_handle_t*)handle, after_write);
uv_req_init(&wr->req, (uv_handle_t*)handle, (void *(*)(void *))after_write);
wr->buf.base = buf.base;
wr->buf.len = nread;
if (uv_write(&wr->req, &wr->buf, 1)) {
@ -135,7 +135,7 @@ static void on_connection(uv_handle_t* server, int status) {
int r;
if (status != 0) {
fprintf(stderr, "Connect error %d\n", uv_last_error());
fprintf(stderr, "Connect error %d\n", uv_last_error().code);
}
ASSERT(status == 0);

View File

@ -70,7 +70,7 @@ static void shutdown_cb(uv_req_t* req, int status) {
static void read_cb(uv_stream_t* tcp, ssize_t nread, uv_buf_t buf) {
ASSERT(nested == 0 && "read_cb must be called from a fresh stack");
printf("Read. nread == %d\n", nread);
printf("Read. nread == %d\n", (int)nread);
free(buf.base);
if (nread == 0) {
@ -97,7 +97,7 @@ static void read_cb(uv_stream_t* tcp, ssize_t nread, uv_buf_t buf) {
/* from a fresh stack. */
if (bytes_received == sizeof MESSAGE) {
nested++;
uv_req_init(&shutdown_req, (uv_handle_t*)tcp, shutdown_cb);
uv_req_init(&shutdown_req, (uv_handle_t*)tcp, (void *(*)(void *))shutdown_cb);
puts("Shutdown");
@ -167,7 +167,7 @@ static void connect_cb(uv_req_t* req, int status) {
buf.base = (char*) &MESSAGE;
buf.len = sizeof MESSAGE;
uv_req_init(&write_req, req->handle, write_cb);
uv_req_init(&write_req, req->handle, (void *(*)(void *))write_cb);
if (uv_write(&write_req, &buf, 1)) {
FATAL("uv_write failed");
@ -191,7 +191,9 @@ TEST_IMPL(callback_stack) {
puts("Connecting...");
nested++;
uv_req_init(&connect_req, (uv_handle_t*)&client, connect_cb);
uv_req_init(&connect_req, (uv_handle_t*)&client,
(void *(*)(void *))connect_cb);
if (uv_tcp_connect(&connect_req, addr)) {
FATAL("uv_tcp_connect failed");
}

View File

@ -103,7 +103,7 @@ void connection_fail(uv_connect_cb connect_cb) {
/* We are never doing multiple reads/connects at a time anyway. */
/* so these handles can be pre-initialized. */
uv_req_init(&req, (uv_handle_t*)&tcp, connect_cb);
uv_req_init(&req, (uv_handle_t*)&tcp, (void *(*)(void *))connect_cb);
uv_tcp_bind(&tcp, client_addr);
r = uv_tcp_connect(&req, server_addr);

View File

@ -178,7 +178,7 @@ static void client_connect() {
r = uv_tcp_init(client);
ASSERT(r == 0);
uv_req_init(connect_req, (uv_handle_t*)client, connect_cb);
uv_req_init(connect_req, (uv_handle_t*)client, (void *(*)(void *))connect_cb);
r = uv_tcp_connect(connect_req, addr);
ASSERT(r == 0);
}

View File

@ -82,7 +82,8 @@ static void pinger_write_ping(pinger_t* pinger) {
buf.len = strlen(PING);
req = (uv_req_t*)malloc(sizeof(*req));
uv_req_init(req, (uv_handle_t*)(&pinger->tcp), pinger_after_write);
uv_req_init(req, (uv_handle_t*)(&pinger->tcp),
(void *(*)(void *))pinger_after_write);
if (uv_write(req, &buf, 1)) {
FATAL("uv_write failed");
@ -158,7 +159,7 @@ static void pinger_new() {
/* We are never doing multiple reads/connects at a time anyway. */
/* so these handles can be pre-initialized. */
uv_req_init(&pinger->connect_req, (uv_handle_t*)(&pinger->tcp),
pinger_on_connect);
(void *(*)(void *))pinger_on_connect);
r = uv_tcp_connect(&pinger->connect_req, server_addr);
ASSERT(!r);
@ -195,7 +196,7 @@ static void pinger_v6_new() {
/* We are never doing multiple reads/connects at a time anyway. */
/* so these handles can be pre-initialized. */
uv_req_init(&pinger->connect_req, (uv_handle_t*)(&pinger->tcp),
pinger_on_connect);
(void *(*)(void *))pinger_on_connect);
r = uv_tcp_connect6(&pinger->connect_req, server_addr);
ASSERT(!r);

View File

@ -102,7 +102,7 @@ static void connect_cb(uv_req_t *req, int status) {
uv_write(&write_req, &qbuf, 1);
/* Shutdown our end of the connection. */
uv_req_init(&shutdown_req, (uv_handle_t*)&tcp, shutdown_cb);
uv_req_init(&shutdown_req, (uv_handle_t*)&tcp, (void *(*)(void *))shutdown_cb);
uv_shutdown(&shutdown_req);
called_connect_cb++;
@ -165,7 +165,7 @@ TEST_IMPL(shutdown_eof) {
r = uv_tcp_init(&tcp);
ASSERT(!r);
uv_req_init(&connect_req, (uv_handle_t*) &tcp, connect_cb);
uv_req_init(&connect_req, (uv_handle_t*) &tcp, (void *(*)(void *))connect_cb);
r = uv_tcp_connect(&connect_req, server_addr);
ASSERT(!r);

View File

@ -144,7 +144,7 @@ static void connect_cb(uv_req_t* req, int status) {
req = (uv_req_t*)malloc(sizeof *req);
ASSERT(req != NULL);
uv_req_init(req, (uv_handle_t*)tcp, write_cb);
uv_req_init(req, (uv_handle_t*)tcp, (void *(*)(void *))write_cb);
r = uv_write(req, (uv_buf_t*)&send_bufs, CHUNKS_PER_WRITE);
ASSERT(r == 0);
}
@ -152,7 +152,7 @@ static void connect_cb(uv_req_t* req, int status) {
/* Shutdown on drain. FIXME: dealloc req? */
req = (uv_req_t*) malloc(sizeof(uv_req_t));
ASSERT(req != NULL);
uv_req_init(req, (uv_handle_t*)tcp, shutdown_cb);
uv_req_init(req, (uv_handle_t*)tcp, (void *(*)(void *))shutdown_cb);
r = uv_shutdown(req);
ASSERT(r == 0);
@ -160,7 +160,7 @@ static void connect_cb(uv_req_t* req, int status) {
req = (uv_req_t*)malloc(sizeof *req);
ASSERT(req != NULL);
uv_req_init(req, (uv_handle_t*)tcp, read_cb);
uv_req_init(req, (uv_handle_t*)tcp, (void *(*)(void *))read_cb);
r = uv_read_start((uv_stream_t*)tcp, alloc_cb, read_cb);
ASSERT(r == 0);
}
@ -184,7 +184,7 @@ TEST_IMPL(tcp_writealot) {
r = uv_tcp_init(client);
ASSERT(r == 0);
uv_req_init(connect_req, (uv_handle_t*)client, connect_cb);
uv_req_init(connect_req, (uv_handle_t*)client, (void *(*)(void *))connect_cb);
r = uv_tcp_connect(connect_req, addr);
ASSERT(r == 0);