http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60100

--- Comment #3 from lavr at ncbi dot nlm.nih.gov ---
Ok, sorry and let me start again.  My original mockup case wasn't good enough.

So attached is the real (preprocessed) code that fails to produce a warning
(yet when compiled from the .c form, the warning is there).

This completes w/o warnings:

> gcc  -E -std=gnu11 -fgnu89-inline -c  -Wall -Wno-format-y2k   -fPIC  
> -gdwarf-3     -D_DEBUG -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE 
> -D_FILE_OFFSET_BITS=64   -DNCBI_WITHOUT_MT -I/home/lavr/cxx/GCC-Debug64/inc 
> -I/home/lavr/cxx/include  /home/lavr/cxx/src/connect/ncbi_socket.c -o 
> ncbi_socket.i
> gcc -std=gnu11 -fgnu89-inline -c  -Wall -Wno-format-y2k   -fPIC  -gdwarf-3    
>  -D_DEBUG -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 
> ncbi_socket.i -o ncbi_socket.o

This produces a warning (as it should):

 gcc -c -std=gnu11 -fgnu89-inline -c  -Wall -Wno-format-y2k   -fPIC  -gdwarf-3 
   -D_DEBUG -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  
-DNCBI_WITHOUT_MT -I/home/lavr/cxx/GCC-Debug64/inc -I/home/lavr/cxx/include 
/home/lavr/cxx/src/connect/ncbi_socket.c -o ncbi_socket.o
/home/lavr/cxx/src/connect/ncbi_socket.c: In function 's_WritePending':
/home/lavr/cxx/src/connect/ncbi_socket.c:3447:33: warning: passing argument 3
of 'BUF_PeekAtCB' from incompatible pointer type [enabled by default]
                                 x_WriteBuf, &ctx, sock->w_len);
                                 ^
In file included from /home/lavr/cxx/src/connect/ncbi_socketp.h:44:0,
                 from /home/lavr/cxx/src/connect/ncbi_connssl.h:37,
                 from /home/lavr/cxx/src/connect/ncbi_socket.c:76:
/home/lavr/cxx/include/connect/ncbi_buffer.h:180:36: note: expected 'size_t
(*)(void *, const void *, size_t)' but argument is of type 'size_t (*)(void *,
const void *, size_t,  int)'
 extern NCBI_XCONNECT_EXPORT size_t BUF_PeekAtCB

Reply via email to