Package: libmemcache
Version: 1.4.0.rc2-1.1
Severity: important
User: debian-...@lists.debian.org
Usertags: ftbfs-gcc-6 gcc-6-storage-size

This package fails to build with GCC 6.  GCC 6 has not been released
yet, but it's expected that GCC 6 will become the default compiler for
stretch.

Note that only the first error is reported; there might be more.  You
can find a snapshot of GCC 6 in experimental.  To build with GCC 6,
you can set CC=gcc-6 CXX=g++-6 explicitly.

You may be able to find out more about this issue at
https://gcc.gnu.org/gcc-6/changes.html

> sbuild (Debian sbuild) 0.67.0 (26 Dec 2015) on dl580gen9-02.hlinux
...
> memcache.c: In function 'mcm_server_connect':
> memcache.c:2214:43: error: dereferencing pointer to incomplete type 'struct 
> addrinfo'
>    if (ms->hostinfo == NULL || ms->hostinfo->ai_addrlen == 0) {
>                                            ^~
> 
> In file included from memcache.c:65:0:
> ../include/memcache.h:1071:101: warning: comparison between pointer and 
> integer
>  #define MCM_ERR_MSG(_code, _msg) mcm_err(ctxt, ERR_FLAG, __FUNCTION__, 
> __LINE__, _code, _msg, (_msg != NULL ? strlen(_msg) : 0), 0)
>                                                                               
>                        ^
> 
> memcache.c:2217:7: note: in expansion of macro 'MCM_ERR_MSG'
>        MCM_ERR_MSG(MCM_ERR_NET_HOST, gai_strerror(i));
>        ^~~~~~~~~~~
> 
> memcache.c:2217:37: warning: passing argument 1 of 'strlen' makes pointer 
> from integer without a cast [-Wint-conversion]
>        MCM_ERR_MSG(MCM_ERR_NET_HOST, gai_strerror(i));
>                                      ^
> 
> ../include/memcache.h:1071:118: note: in definition of macro 'MCM_ERR_MSG'
>  #define MCM_ERR_MSG(_code, _msg) mcm_err(ctxt, ERR_FLAG, __FUNCTION__, 
> __LINE__, _code, _msg, (_msg != NULL ? strlen(_msg) : 0), 0)
>                                                                               
>                                         ^~~~
> 
> In file included from memcache.c:35:0:
> /usr/include/string.h:394:15: note: expected 'const char *' but argument is 
> of type 'int'
>  extern size_t strlen (const char *__s)
>                ^~~~~~
> 
> In file included from memcache.c:65:0:
> memcache.c:2217:37: warning: passing argument 6 of 'mcm_err' makes pointer 
> from integer without a cast [-Wint-conversion]
>        MCM_ERR_MSG(MCM_ERR_NET_HOST, gai_strerror(i));
>                                      ^
> 
> ../include/memcache.h:1071:89: note: in definition of macro 'MCM_ERR_MSG'
>  #define MCM_ERR_MSG(_code, _msg) mcm_err(ctxt, ERR_FLAG, __FUNCTION__, 
> __LINE__, _code, _msg, (_msg != NULL ? strlen(_msg) : 0), 0)
>                                                                               
>            ^~~~
> 
> memcache.c:773:1: note: expected 'const char *' but argument is of type 'int'
>  mcm_err(const struct memcache_ctxt *ctxt, const u_int32_t flags, const char 
> *funcname, const u_int32_t lineno,
>  ^~~~~~~
> 
> memcache.c:2223:66: warning: left-hand operand of comma expression has no 
> effect [-Wunused-value]
>    for (i = 0, res = ms->hostinfo; res != NULL; res = res->ai_next, i++) {
>                                                                   ^
> 
> memcache.c: In function 'mcm_server_free':
> memcache.c:2457:5: warning: implicit declaration of function 'freeaddrinfo' 
> [-Wimplicit-function-declaration]
>      freeaddrinfo(ms->hostinfo);
>      ^~~~~~~~~~~~
> 
> memcache.c: In function 'mcm_server_resolve':
> memcache.c:2602:19: error: storage size of 'hints' isn't known
>    struct addrinfo hints, *res;
>                    ^~~~~
> 
> memcache.c:2618:24: error: invalid application of 'sizeof' to incomplete type 
> 'struct addrinfo'
>    bzero(&hints, sizeof(struct addrinfo));
>                         ^~~~~~
> 
> memcache.c:2622:9: warning: implicit declaration of function 'getaddrinfo' 
> [-Wimplicit-function-declaration]
>    ret = getaddrinfo(ms->hostname, ms->port, &hints, &ms->hostinfo);
>          ^~~~~~~~~~~
> 
> memcache.c:2602:19: warning: unused variable 'hints' [-Wunused-variable]
>    struct addrinfo hints, *res;
>                    ^~~~~
> 
> memcache.c: At top level:
> memcache.c:288:11: warning: 'mcGlobalCtxt' is static but used in inline 
> function 'mc_global_ctxt' which is not static
>    return &mcGlobalCtxt;
>            ^~~~~~~~~~~~
> 
> In file included from memcache.c:66:0:
> ../include/memcache/buffer.h:73:16: warning: inline function 
> 'mcm_buf_remain_off' declared but never defined
>  inline size_t  mcm_buf_remain_off(const struct memcache_ctxt *, const struct 
> memcache_buf *);
>                 ^~~~~~~~~~~~~~~~~~
> 
> ../include/memcache/buffer.h:72:16: warning: inline function 'mcm_buf_remain' 
> declared but never defined
>  inline size_t  mcm_buf_remain(const struct memcache_ctxt *, const struct 
> memcache_buf *);
>                 ^~~~~~~~~~~~~~
> 
> ../include/memcache/buffer.h:66:19: warning: inline function 'mcm_buf_len' 
> declared but never defined
>  inline u_int32_t  mcm_buf_len(const struct memcache_ctxt *, const struct 
> memcache_buf *);
>                    ^~~~~~~~~~~
> 
> memcache.c:160:21: warning: 'str_space_len' defined but not used 
> [-Wunused-const-variable]
>  static const size_t str_space_len = MCM_CSTRLEN(str_space);
>                      ^~~~~~~~~~~~~
> 
> Makefile:457: recipe for target 'memcache.lo' failed
> make[3]: *** [memcache.lo] Error 1

-- 
Martin Michlmayr
Linux for HPE Helion, Hewlett Packard Enterprise

Reply via email to