On Mon, Jan 16, 2023 at 12:39:39AM +0000, Ramsay Jones wrote: > > By the way, it seemed odd to me that this failed in just the linux-musl > > job, and not elsewhere (nor on my development machine, which has curl > > 7.87.0). It looks like there's a bad interaction within curl between the > > typecheck and deprecation macros. Here's a minimal reproduction: > > > > -- >8 -- > > cat >foo.c <<-\EOF > > #include <curl/curl.h> > > void foo(CURL *c) > > { > > curl_easy_setopt(c, CURLOPT_PROTOCOLS, 0); > > } > > EOF > > > > # this will complain about deprecated CURLOPT_PROTOCOLS > > gcc -DCURL_DISABLE_TYPECHECK -Wdeprecated-declarations -c foo.c > > > > # this will not > > gcc -Wdeprecated-declarations -c foo.c > > -- 8< -- > > FYI, I just tried this on cygwin and both gcc invocations above > complain about deprecated CURLOPT_PROTOCOLS. (On Linux I have > curl 7.81.0, so I can't test there). It did work on Linux for me, of course, using 7.87.0. But curiously this morning it behaved differently! In the meantime, Debian's libcurl packaging picked up this upstream patch (and I upgraded): https://github.com/curl/curl/commit/e2aed004302e51cfa5b6ce8c8ab65ef92aa83196 and now the deprecation warning happens consistently. So I think on the curl side there is nothing left to do. -Peff