curl/lib
Viktor Szakats 0fd794df35
cmake: fix -Wredundant-decls in unity/mingw-w64/gcc/curldebug/DLL builds
It affected cmake-unity shared-curltool curldebug mingw-w64 gcc builds
when building the `testdeps` target.

Apply the solution already used in `lib/base64.c` and `lib/dynbuf.c`
to fix it.

Also update an existing GHA CI job to test the issue fixed.

```
In file included from curl/lib/version_win32.c:35,
                 from curl/_bld/src/CMakeFiles/curl.dir/Unity/unity_0_c.c:145:
curl/lib/memdebug.h:52:14: error: redundant redeclaration of 'curl_dbg_logfile' [-Werror=redundant-decls]
   52 | extern FILE *curl_dbg_logfile;
      |              ^~~~~~~~~~~~~~~~
In file included from curl/src/slist_wc.c:32,
                 from curl/_bld/src/CMakeFiles/curl.dir/Unity/unity_0_c.c:4:
curl/lib/memdebug.h:52:14: note: previous declaration of 'curl_dbg_logfile' with type 'FILE *' {aka 'struct _iobuf *'}
   52 | extern FILE *curl_dbg_logfile;
      |              ^~~~~~~~~~~~~~~~
curl/lib/memdebug.h:55:44: error: redundant redeclaration of 'curl_dbg_malloc' [-Werror=redundant-decls]
   55 | CURL_EXTERN ALLOC_FUNC ALLOC_SIZE(1) void *curl_dbg_malloc(size_t size,
      |                                            ^~~~~~~~~~~~~~~
curl/lib/memdebug.h:55:44: note: previous declaration of 'curl_dbg_malloc' with type 'void *(size_t,  int,  const char *)' {aka 'void *(long long unsigned int,  int,  const char *)'}
   55 | CURL_EXTERN ALLOC_FUNC ALLOC_SIZE(1) void *curl_dbg_malloc(size_t size,
      |                                            ^~~~~~~~~~~~~~~
[...]
curl/lib/memdebug.h:110:17: error: redundant redeclaration of 'curl_dbg_fclose' [-Werror=redundant-decls]
  110 | CURL_EXTERN int curl_dbg_fclose(FILE *file, int line, const char *source);
      |                 ^~~~~~~~~~~~~~~
curl/lib/memdebug.h:110:17: note: previous declaration of 'curl_dbg_fclose' with type 'int(FILE *, int,  const char *)' {aka 'int(struct _iobuf *, int,  const char *)'}
  110 | CURL_EXTERN int curl_dbg_fclose(FILE *file, int line, const char *source);
      |                 ^~~~~~~~~~~~~~~
```
Ref: https://ci.appveyor.com/project/curlorg/curl/builds/49840554/job/a4aoet17e9qnqx1a#L362

After: https://ci.appveyor.com/project/curlorg/curl/builds/49843735/job/hbo2uah2vj0ns523

Ref: #13689 (CI testing this PR with `DEBUGBUILD`/`CURLDEBUG`/shared-static combinations)
Depends-on: #13694
Depends-on: #13800
Closes #13705
2024-05-27 22:56:13 +02:00
..
vauth vauth: make two functions void that always just returned OK 2024-05-13 22:38:25 +02:00
vquic vquic-tls: use correct cert name check API for wolfSSL 2024-05-16 22:44:29 +02:00
vssh libssh: remove CURLOPT_SSL_VERIFYHOST check 2024-05-26 12:01:16 +02:00
vtls multi: add multi->proto_hash, a key-value store for protocol data 2024-05-26 00:15:01 +02:00
.checksrc
.gitattributes
.gitignore build: remove MacOSX-Framework script 2024-04-08 22:46:51 +02:00
altsvc.c lib: merge ENABLE_QUIC C macro into USE_HTTP3 2024-04-13 08:33:27 +00:00
altsvc.h
amigaos.c
amigaos.h
arpa_telnet.h
asyn-ares.c build: prefer USE_IPV6 macro internally (was: ENABLE_IPV6) 2024-04-13 08:33:26 +00:00
asyn-thread.c asyn-thread: avoid using GetAddrInfoExW with impersonation 2024-05-23 23:56:58 +02:00
asyn.h
base64.c lib: silence -Wsign-conversion in base64, strcase, mprintf 2024-04-24 23:29:30 +02:00
bufq.c bufq: writing into a softlimit queue cannot be partial 2024-03-03 17:35:47 +01:00
bufq.h bufq: remove duplicate word in comment 2024-05-08 19:12:03 +02:00
bufref.c
bufref.h
c-hyper.c lib: add Curl_xfer_write_resp_hd 2024-04-11 09:29:21 +02:00
c-hyper.h http: expect 100 rework 2024-03-18 12:41:56 +01:00
cf-h1-proxy.c lib/cf-h1-proxy: silence compiler warnings (gcc 14) 2024-05-08 12:37:33 +02:00
cf-h1-proxy.h
cf-h2-proxy.c tls: use shared init code for TCP+QUIC 2024-04-09 09:08:05 +02:00
cf-h2-proxy.h
cf-haproxy.c tls: use shared init code for TCP+QUIC 2024-04-09 09:08:05 +02:00
cf-haproxy.h
cf-https-connect.c cf-https-connect: use timeouts as unsigned ints 2024-04-30 11:23:20 +02:00
cf-https-connect.h
cf-socket.c lib: fix compiler warnings (gcc) 2024-05-17 12:00:19 +02:00
cf-socket.h lib: keep conn IP information together 2024-03-09 23:24:58 +01:00
cfilters.c build: untangle UNITTESTS and DEBUGBUILD macros 2024-05-27 21:15:50 +02:00
cfilters.h build: untangle UNITTESTS and DEBUGBUILD macros 2024-05-27 21:15:50 +02:00
CMakeLists.txt cmake: use APPLE instead of CMAKE_SYSTEM_NAME string 2024-05-27 18:17:43 +02:00
config-amigaos.h
config-dos.h
config-mac.h
config-os400.h lib: merge ENABLE_QUIC C macro into USE_HTTP3 2024-04-13 08:33:27 +00:00
config-plan9.h build: prefer USE_IPV6 macro internally (was: ENABLE_IPV6) 2024-04-13 08:33:26 +00:00
config-riscos.h build: prefer USE_IPV6 macro internally (was: ENABLE_IPV6) 2024-04-13 08:33:26 +00:00
config-win32.h build: prefer USE_IPV6 macro internally (was: ENABLE_IPV6) 2024-04-13 08:33:26 +00:00
config-win32ce.h
conncache.c lib: bump hash sizes to size_t 2024-05-12 18:53:09 +02:00
conncache.h lib: bump hash sizes to size_t 2024-05-12 18:53:09 +02:00
connect.c build: untangle UNITTESTS and DEBUGBUILD macros 2024-05-27 21:15:50 +02:00
connect.h build: untangle UNITTESTS and DEBUGBUILD macros 2024-05-27 21:15:50 +02:00
content_encoding.c test: add test1546, chunked not last transfer encoding 2024-05-22 09:11:13 +02:00
content_encoding.h
cookie.c lib: silence warnings on comma misuse 2024-04-17 14:26:35 +02:00
cookie.h
curl_addrinfo.c build: prefer USE_IPV6 macro internally (was: ENABLE_IPV6) 2024-04-13 08:33:26 +00:00
curl_addrinfo.h
curl_base64.h
curl_config.h.cmake curl_setup.h: detect 'inline' support 2024-04-25 22:38:00 +02:00
curl_ctype.h
curl_des.c misc: Fix typos in docs and lib 2024-03-01 09:59:48 +01:00
curl_des.h
curl_endian.c
curl_endian.h
curl_fnmatch.c
curl_fnmatch.h
curl_get_line.c lib: convert Curl_get_line to use dynbuf 2024-02-07 09:22:10 +01:00
curl_get_line.h lib: convert Curl_get_line to use dynbuf 2024-02-07 09:22:10 +01:00
curl_gethostname.c lib: fix compiler warnings (gcc) 2024-05-17 12:00:19 +02:00
curl_gethostname.h
curl_gssapi.c
curl_gssapi.h
curl_hmac.h
curl_krb5.h
curl_ldap.h
curl_md4.h
curl_md5.h
curl_memory.h
curl_memrchr.c
curl_memrchr.h
curl_multibyte.c curl_multibyte: remove access() function wrapper for Windows 2024-05-07 02:28:10 -04:00
curl_multibyte.h
curl_ntlm_core.c
curl_ntlm_core.h
curl_path.c curl_path: make Curl_get_pathname use dynbuf 2024-05-08 10:10:12 +02:00
curl_path.h curl_path: make Curl_get_pathname use dynbuf 2024-05-08 10:10:12 +02:00
curl_printf.h
curl_range.c
curl_range.h
curl_rtmp.c lib: make protocol handlers store scheme name lowercase 2024-05-08 09:39:30 +02:00
curl_rtmp.h curl_version_info: provide librtmp version 2024-04-15 16:48:34 +02:00
curl_sasl.c vauth: make two functions void that always just returned OK 2024-05-13 22:38:25 +02:00
curl_sasl.h
curl_setup_once.h lib: use #error instead of invalid syntax in curl_setup_once.h 2024-04-05 09:24:05 +00:00
curl_setup.h build: untangle UNITTESTS and DEBUGBUILD macros 2024-05-27 21:15:50 +02:00
curl_sha256.h
curl_sha512_256.c cmake: fix building in unity mode 2024-05-24 03:25:19 -04:00
curl_sha512_256.h SHA-512/256: implement hash algorithm 2024-02-20 11:35:56 +01:00
curl_sspi.c
curl_sspi.h
curl_threads.c asyn-thread: fix curl_global_cleanup crash in Windows 2024-05-07 14:54:11 -04:00
curl_threads.h
curl_trc.c ftp: add tracing support 2024-05-10 23:39:48 +02:00
curl_trc.h ftp: add tracing support 2024-05-10 23:39:48 +02:00
curlx.h curl: use curl_getenv instead of the curlx_ version 2024-03-30 22:45:47 +01:00
cw-out.c cw-out: improved error handling 2024-04-16 15:52:10 +02:00
cw-out.h cw-out: improved error handling 2024-04-16 15:52:10 +02:00
dict.c lib: make protocol handlers store scheme name lowercase 2024-05-08 09:39:30 +02:00
dict.h
dllmain.c dllmain: Call OpenSSL thread cleanup for Windows and Cygwin 2024-04-24 04:04:25 -04:00
doh.c doh: cleanups in ECH related functions 2024-05-06 09:09:51 +02:00
doh.h build: untangle UNITTESTS and DEBUGBUILD macros 2024-05-27 21:15:50 +02:00
dynbuf.c dynbuf: Fix returncode on memory error 2024-05-04 11:44:27 +02:00
dynbuf.h
dynhds.c build: untangle UNITTESTS and DEBUGBUILD macros 2024-05-27 21:15:50 +02:00
dynhds.h build: untangle UNITTESTS and DEBUGBUILD macros 2024-05-27 21:15:50 +02:00
easy_lock.h
easy.c lib: clear the easy handle's saved errno before transfer 2024-05-10 18:26:32 -04:00
easygetopt.c curldown: Fix email address in Copyright 2024-02-28 11:28:10 +01:00
easyif.h lib: Curl_read/Curl_write clarifications 2024-02-27 14:13:56 +01:00
easyoptions.c TLS: add support for ECH (Encrypted Client Hello) 2024-04-16 08:10:53 +02:00
easyoptions.h
escape.c
escape.h
file.c lib: make protocol handlers store scheme name lowercase 2024-05-08 09:39:30 +02:00
file.h
fileinfo.c
fileinfo.h
fopen.c fopen: fix narrowing conversion warning on 32-bit Android 2024-02-27 14:26:22 +01:00
fopen.h
formdata.c
formdata.h
ftp.c ftp: fix build for CURL_DISABLE_VERBOSE_STRINGS 2024-05-10 19:14:29 -04:00
ftp.h
ftplistparser.c llist: add Curl_llist_append() 2024-04-11 09:00:51 +02:00
ftplistparser.h
functypes.h
getenv.c
getinfo.c urldata: remove fields not used depending on used features 2024-04-05 16:06:22 +02:00
getinfo.h
gopher.c lib: make protocol handlers store scheme name lowercase 2024-05-08 09:39:30 +02:00
gopher.h
hash.c multi: add multi->proto_hash, a key-value store for protocol data 2024-05-26 00:15:01 +02:00
hash.h multi: add multi->proto_hash, a key-value store for protocol data 2024-05-26 00:15:01 +02:00
headers.c misc: fix typos, quoting and spelling 2024-05-06 10:35:53 +02:00
headers.h http: move headers collecting to writer 2024-02-26 09:44:15 +01:00
hmac.c
hostasyn.c
hostip4.c
hostip6.c
hostip.c lib: fix compiler warnings (gcc) 2024-05-17 12:00:19 +02:00
hostip.h lib: bump hash sizes to size_t 2024-05-12 18:53:09 +02:00
hostsyn.c
hsts.c build: untangle UNITTESTS and DEBUGBUILD macros 2024-05-27 21:15:50 +02:00
hsts.h build: untangle UNITTESTS and DEBUGBUILD macros 2024-05-27 21:15:50 +02:00
http1.c
http1.h
http2.c http: HEAD response body tolerance 2024-05-21 14:51:11 +02:00
http2.h
http_aws_sigv4.c lib: fix gcc warning in certain debug builds 2024-05-27 22:26:45 +02:00
http_aws_sigv4.h
http_chunks.c lib: add trace support for client reads and writes 2024-04-05 16:08:10 +02:00
http_chunks.h lib: Curl_read/Curl_write clarifications 2024-02-28 12:58:55 +01:00
http_digest.c
http_digest.h
http_negotiate.c http_negotiate: fix CURL_DISABLE_PROXY build 2024-04-10 14:56:05 +02:00
http_negotiate.h
http_ntlm.c NTLM_WB: drop support 2024-04-08 13:58:58 +02:00
http_ntlm.h
http_proxy.c tls: use shared init code for TCP+QUIC 2024-04-09 09:08:05 +02:00
http_proxy.h
http.c http: write last header line late 2024-05-25 23:42:53 +02:00
http.h http/2, http/3: decouple stream state from easy handle 2024-04-17 14:24:09 +02:00
idn.c idn: add native AppleIDN (icucore) support for macOS/iOS 2024-04-17 00:24:09 +02:00
idn.h idn: add native AppleIDN (icucore) support for macOS/iOS 2024-04-17 00:24:09 +02:00
if2ip.c if2ip: make the buf_size arg a size_t 2024-04-30 14:22:11 +02:00
if2ip.h if2ip: make the buf_size arg a size_t 2024-04-30 14:22:11 +02:00
imap.c lib: make protocol handlers store scheme name lowercase 2024-05-08 09:39:30 +02:00
imap.h
inet_ntop.c build: prefer USE_IPV6 macro internally (was: ENABLE_IPV6) 2024-04-13 08:33:26 +00:00
inet_ntop.h
inet_pton.c build: prefer USE_IPV6 macro internally (was: ENABLE_IPV6) 2024-04-13 08:33:26 +00:00
inet_pton.h
krb5.c krb5: use dynbuf 2024-05-09 10:59:13 +02:00
ldap.c ldap: fix unused variables (seen on OmniOS) 2024-05-10 23:11:55 +02:00
libcurl.rc (lib)curl.rc: set debug flag also for CURLDEBUG and UNITTESTS 2024-05-22 08:38:12 +02:00
libcurl.vers.in
llist.c llist: add Curl_llist_append() 2024-04-11 09:00:51 +02:00
llist.h llist: add Curl_llist_append() 2024-04-11 09:00:51 +02:00
macos.c
macos.h
Makefile.am build: remove MacOSX-Framework script 2024-04-08 22:46:51 +02:00
Makefile.inc mbedTLS: implement CURLOPT_SSL_CIPHER_LIST option 2024-04-24 14:30:37 +02:00
Makefile.mk build: prefer USE_IPV6 macro internally (was: ENABLE_IPV6) 2024-04-13 08:33:26 +00:00
Makefile.soname
md4.c cmake: fix building with both md4 and md5 in unity mode 2024-05-22 14:16:40 +02:00
md5.c cmake: fix building with both md4 and md5 in unity mode 2024-05-22 14:16:40 +02:00
memdebug.c build: delete/replace clang warning pragmas 2024-01-27 21:19:41 +00:00
memdebug.h
mime.c lib: remove two instances of "only only" messages 2024-05-08 00:03:38 +02:00
mime.h mime: add client reader 2024-03-06 00:17:37 +01:00
mprintf.c lib: silence -Wsign-conversion in base64, strcase, mprintf 2024-04-24 23:29:30 +02:00
mqtt.c lib: make protocol handlers store scheme name lowercase 2024-05-08 09:39:30 +02:00
mqtt.h mqtt, remove remaining use of data->state.buffer 2024-01-27 12:42:19 +01:00
multi.c multi: add multi->proto_hash, a key-value store for protocol data 2024-05-26 00:15:01 +02:00
multihandle.h multi: add multi->proto_hash, a key-value store for protocol data 2024-05-26 00:15:01 +02:00
multiif.h lib: bump hash sizes to size_t 2024-05-12 18:53:09 +02:00
netrc.c lib: convert Curl_get_line to use dynbuf 2024-02-07 09:22:10 +01:00
netrc.h
nonblock.c
nonblock.h
noproxy.c build: prefer USE_IPV6 macro internally (was: ENABLE_IPV6) 2024-04-13 08:33:26 +00:00
noproxy.h build: untangle UNITTESTS and DEBUGBUILD macros 2024-05-27 21:15:50 +02:00
openldap.c lib: make protocol handlers store scheme name lowercase 2024-05-08 09:39:30 +02:00
optiontable.pl curldown: Fix email address in Copyright 2024-02-28 11:28:10 +01:00
parsedate.c
parsedate.h
pingpong.c smpt: fix starttls 2024-03-05 13:30:16 +01:00
pingpong.h lib: send rework 2024-02-27 08:58:10 +01:00
pop3.c lib: make protocol handlers store scheme name lowercase 2024-05-08 09:39:30 +02:00
pop3.h lib: add Curl_xfer_write_resp_hd 2024-04-11 09:29:21 +02:00
progress.c
progress.h
psl.c
psl.h
rand.c lib: add debug log outputs for CURLE_BAD_FUNCTION_ARGUMENT 2024-01-08 22:48:24 +01:00
rand.h
rename.c
rename.h
request.c request: make Curl_req_init return void 2024-04-19 23:42:33 +02:00
request.h request: make Curl_req_init return void 2024-04-19 23:42:33 +02:00
rtsp.c lib: make protocol handlers store scheme name lowercase 2024-05-08 09:39:30 +02:00
rtsp.h lib: add Curl_xfer_write_resp_hd 2024-04-11 09:29:21 +02:00
select.c
select.h
sendf.c transfer: conn close on paused upload 2024-05-23 23:55:09 +02:00
sendf.h sendf: fix two typos in comments 2024-04-17 14:28:24 +02:00
setopt.c setopt: acknowledge errors proper for CURLOPT_COOKIEJAR 2024-05-14 07:59:43 +02:00
setopt.h setopt: warn on Curl_set*opt() uses not using the return value 2024-05-12 17:27:51 +02:00
setup-os400.h
setup-vms.h build: prefer USE_IPV6 macro internally (was: ENABLE_IPV6) 2024-04-13 08:33:26 +00:00
setup-win32.h
sha256.c cmake: fix building in unity mode 2024-05-24 03:25:19 -04:00
share.c
share.h
sigpipe.h
slist.c
slist.h
smb.c lib: make protocol handlers store scheme name lowercase 2024-05-08 09:39:30 +02:00
smb.h lib: further send/upload handling polish 2024-03-04 08:42:56 +01:00
smtp.c lib: make protocol handlers store scheme name lowercase 2024-05-08 09:39:30 +02:00
smtp.h lib: further send/upload handling polish 2024-03-04 08:42:56 +01:00
sockaddr.h build: prefer USE_IPV6 macro internally (was: ENABLE_IPV6) 2024-04-13 08:33:26 +00:00
socketpair.c wakeup_create: use FD_CLOEXEC/SOCK_CLOEXEC 2024-05-16 23:02:12 +02:00
socketpair.h wakeup_create: use FD_CLOEXEC/SOCK_CLOEXEC 2024-05-16 23:02:12 +02:00
socks_gssapi.c misc: Fix typos in docs and lib 2024-03-01 09:59:48 +01:00
socks_sspi.c
socks.c build: prefer USE_IPV6 macro internally (was: ENABLE_IPV6) 2024-04-13 08:33:26 +00:00
socks.h
speedcheck.c
speedcheck.h
splay.c
splay.h
strcase.c lib: silence -Wsign-conversion in base64, strcase, mprintf 2024-04-24 23:29:30 +02:00
strcase.h
strdup.c
strdup.h
strerror.c TLS: add support for ECH (Encrypted Client Hello) 2024-04-16 08:10:53 +02:00
strerror.h
strtok.c
strtok.h
strtoofft.c lib: initialize output pointers to NULL before calling strto[ff,l,ul] 2024-02-26 17:19:27 +01:00
strtoofft.h
system_win32.c asyn-thread: avoid using GetAddrInfoExW with impersonation 2024-05-23 23:56:58 +02:00
system_win32.h asyn-thread: avoid using GetAddrInfoExW with impersonation 2024-05-23 23:56:58 +02:00
telnet.c lib: make protocol handlers store scheme name lowercase 2024-05-08 09:39:30 +02:00
telnet.h
tftp.c lib: fix compiler warnings (gcc) 2024-05-17 12:00:19 +02:00
tftp.h
timediff.c
timediff.h
timeval.c
timeval.h
transfer.c transfer: remove curl_upload_refill_watermark, no longer used 2024-05-24 14:54:07 +02:00
transfer.h lib: add Curl_xfer_write_resp_hd 2024-04-11 09:29:21 +02:00
url.c url: remove duplicate call to Curl_conncache_remove_conn when pruning 2024-05-21 16:25:21 +02:00
url.h lib: keep conn IP information together 2024-03-09 23:24:58 +01:00
urlapi-int.h build: untangle UNITTESTS and DEBUGBUILD macros 2024-05-27 21:15:50 +02:00
urlapi.c lib: call Curl_strntolower instead of doing crafted loops 2024-05-14 08:00:19 +02:00
urldata.h krb5: use dynbuf 2024-05-09 10:59:13 +02:00
version_win32.c cmake: fix -Wredundant-decls in unity/mingw-w64/gcc/curldebug/DLL builds 2024-05-27 22:56:13 +02:00
version_win32.h
version.c version: use msnprintf instead of strncpy 2024-05-08 10:40:58 +02:00
warnless.c
warnless.h warnless: delete orphan declarations 2024-05-14 16:37:11 +02:00
ws.c websocket: Avoid memory leak in error path 2024-05-13 09:11:23 +02:00
ws.h lib: client reader polish 2024-03-08 13:11:17 +01:00