JosephP91 / curlcpp

An object oriented C++ wrapper for CURL (libcurl)
https://josephp91.github.io/curlcpp
MIT License
630 stars 174 forks source link

build fail with curl 7.83.0 #143

Closed Mindavi closed 2 years ago

Mindavi commented 2 years ago

Due to a newly added/exposed struct in curl, the build now fails with curl 7.83.0.

See https://hydra.nixos.org/build/176087833/nixlog/2

Excerpt:

/build/source/src/curl_header.cpp: At global scope:
/build/source/src/curl_header.cpp:14:13: error: 'class curl::curl_header' conflicts with a previous declaration
   14 | using curl::curl_header;
      |             ^~~~~~~~~~~
In file included from /nix/store/7amiihx8r0pklfl1c7m91z1hpq68py14-curl-7.83.0-dev/include/curl/curl.h:3072,
                 from /build/source/src/../include/curl_header.h:31,
                 from /build/source/src/curl_header.cpp:6:
/nix/store/7amiihx8r0pklfl1c7m91z1hpq68py14-curl-7.83.0-dev/include/curl/header.h:25:8: note: previous declaration 'struct curl_header'
   25 | struct curl_header {
      |        ^~~~~~~~~~~
/build/source/src/curl_header.cpp:19:26: error: definition of implicitly-declared 'curl_header::curl_header()'
   19 | curl_header::curl_header() : size(0), headers(nullptr) {
      |                          ^
/build/source/src/curl_header.cpp:24:1: error: no declaration matches 'curl_header::curl_header(std::initializer_list<std::__cxx11::basic_string<char> >)'
   24 | curl_header::curl_header(initializer_list<string> headers) : size(0), headers(nullptr) {
      | ^~~~~~~~~~~
In file included from /nix/store/7amiihx8r0pklfl1c7m91z1hpq68py14-curl-7.83.0-dev/include/curl/curl.h:3072,
                 from /build/source/src/../include/curl_header.h:31,
                 from /build/source/src/curl_header.cpp:6:
/nix/store/7amiihx8r0pklfl1c7m91z1hpq68py14-curl-7.83.0-dev/include/curl/header.h:25:8: note: candidates are: 'constexpr curl_header::curl_header(curl_header&&)'
   25 | struct curl_header {
      |        ^~~~~~~~~~~
/nix/store/7amiihx8r0pklfl1c7m91z1hpq68py14-curl-7.83.0-dev/include/curl/header.h:25:8: note:                 'constexpr curl_header::curl_header(const curl_header&)'
/nix/store/7amiihx8r0pklfl1c7m91z1hpq68py14-curl-7.83.0-dev/include/curl/header.h:25:8: note:                 'curl_header::curl_header()'
/nix/store/7amiihx8r0pklfl1c7m91z1hpq68py14-curl-7.83.0-dev/include/curl/header.h:25:8: note: 'struct curl_header' defined here
/build/source/src/curl_header.cpp:34:62: error: definition of implicitly-declared 'constexpr curl_header& curl_header::operator=(const curl_header&)'
   34 | curl_header &curl_header::operator=(const curl_header &header) {
      |                                                              ^
In file included from /build/source/src/../include/curl_header.h:33,
                 from /build/source/src/curl_header.cpp:6:
/build/source/src/../include/curl_config.h:32:22: error: definition of implicitly-declared 'curl_header::~curl_header()'
   32 |     #define NOEXCEPT noexcept
      |                      ^~~~~~~~
/build/source/src/curl_header.cpp:48:29: note: in expansion of macro 'NOEXCEPT'
   48 | curl_header::~curl_header() NOEXCEPT {
      |                             ^~~~~~~~
/build/source/src/curl_header.cpp:56:6: error: no declaration matches 'void curl_header::add(const string&)'
   56 | void curl_header::add(const string& header) {
      |      ^~~~~~~~~~~
/build/source/src/curl_header.cpp:56:6: note: no functions named 'void curl_header::add(const string&)'
In file included from /nix/store/7amiihx8r0pklfl1c7m91z1hpq68py14-curl-7.83.0-dev/include/curl/curl.h:3072,
                 from /build/source/src/../include/curl_header.h:31,
                 from /build/source/src/curl_header.cpp:6:
/nix/store/7amiihx8r0pklfl1c7m91z1hpq68py14-curl-7.83.0-dev/include/curl/header.h:25:8: note: 'struct curl_header' defined here
   25 | struct curl_header {
      |        ^~~~~~~~~~~

As far as I can tell there's no patch available for this yet in this repository.

Just as an FYI since I noticed, I'm not using this myself.

prateek9623 commented 2 years ago

this issue seems to be this recent commit https://github.com/curl/curl/commit/d1e4a677340c6a1f0ebbc13f1021808c23ad1138

SemenMartynov commented 2 years ago

Could you tell pls when we can expect a release with this fix?