From: Fredrik Tolf Date: Wed, 31 Oct 2007 05:20:41 +0000 (+0100) Subject: Avoid gcc's type-punning warnings. X-Git-Tag: 1.1~45 X-Git-Url: http://dolda2000.com/gitweb/?p=doldaconnect.git;a=commitdiff_plain;h=e0cbc756d0375ee96cb9da2548117a6884d57a9f Avoid gcc's type-punning warnings. --- diff --git a/daemon/net.c b/daemon/net.c index 6af0e0a..9b5a34a 100644 --- a/daemon/net.c +++ b/daemon/net.c @@ -549,7 +549,7 @@ void closesock(struct socket *sk) { struct sockaddr_un *un; - if((sk->family == AF_UNIX) && !sockgetlocalname(sk, (struct sockaddr **)&un, NULL) && (un->sun_family == PF_UNIX)) + if((sk->family == AF_UNIX) && !sockgetlocalname(sk, (struct sockaddr **)(void *)&un, NULL) && (un->sun_family == PF_UNIX)) { if((sk->state == SOCK_LST) && strchr(un->sun_path, '/')) { diff --git a/include/utils.h b/include/utils.h index e9336cd..fdcd0c3 100644 --- a/include/utils.h +++ b/include/utils.h @@ -107,18 +107,18 @@ struct wcspair *newwcspair(wchar_t *key, wchar_t *val, struct wcspair **list); void freewcspair(struct wcspair *pair, struct wcspair **list); wchar_t *wpfind(struct wcspair *list, wchar_t *key); -#define sizebuf(b, bs, rs, es, a) _sizebuf((void **)(b), (bs), (rs), (es), (a)) -#define sizebuf2(b, rs, a) _sizebuf((void **)(&(b)), &(b ## size), (rs), sizeof(*(b)), (a)) +#define sizebuf(b, bs, rs, es, a) _sizebuf((void **)(void *)(b), (bs), (rs), (es), (a)) +#define sizebuf2(b, rs, a) _sizebuf((void **)(void *)(&(b)), &(b ## size), (rs), sizeof(*(b)), (a)) #define addtobuf(b, c) \ do { \ - _sizebuf((void **)(&(b)), &(b ## size), (b ## data) + 1, sizeof(*(b)), 1); \ + _sizebuf((void **)(void *)(&(b)), &(b ## size), (b ## data) + 1, sizeof(*(b)), 1); \ (b)[(b ## data)++] = (c); \ } while(0) #define bufcat(d, s, n) \ do { \ size_t __bufcat_size__; \ __bufcat_size__ = (n); \ - _sizebuf((void **)(&(d)), &(d ## size), (d ## data) + __bufcat_size__, sizeof(*(d)), 1); \ + _sizebuf((void **)(void *)(&(d)), &(d ## size), (d ## data) + __bufcat_size__, sizeof(*(d)), 1); \ memcpy((d) + (d ## data), (s), sizeof(*(d)) * __bufcat_size__); \ (d ## data) += __bufcat_size__; \ } while (0)