Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Compile error from spdlog 1.9 #4078

Closed
Tracked by #4131
cjnolet opened this issue Jul 21, 2021 · 4 comments · Fixed by #5230
Closed
Tracked by #4131

[BUG] Compile error from spdlog 1.9 #4078

cjnolet opened this issue Jul 21, 2021 · 4 comments · Fixed by #5230
Labels
bug Something isn't working inactive-30d inactive-90d

Comments

@cjnolet
Copy link
Member

cjnolet commented Jul 21, 2021

We have found the following build error in a couple logs (and in CI now) which seems to stem from spdlog recently deploying updated conda packages.

/home/cjnolet/miniconda3/envs/cuml_2108_072021_3/include/spdlog/fmt/bundled/format-inl.h: In function ‘std::system_error fmt::v8::vsystem_error(int, fmt::v8::string_view, fmt::v8::format_args)’:
/home/cjnolet/miniconda3/envs/cuml_2108_072021_3/include/spdlog/fmt/bundled/format-inl.h:135:8: error: expected primary-expression before ‘class’
  135 |   return std::system_error(ec, vformat(format_str, args));
      |        ^~~~~
/home/cjnolet/miniconda3/envs/cuml_2108_072021_3/include/spdlog/fmt/bundled/format-inl.h:135:7: error: expected ‘;’ before ‘class’
  135 |   return std::system_error(ec, vformat(format_str, args));
      |       ^~~~~~
      |       ;
/home/cjnolet/miniconda3/envs/cuml_2108_072021_3/include/spdlog/fmt/bundled/format-inl.h:135:8: error: expected primary-expression before ‘class’
  135 |   return std::system_error(ec, vformat(format_str, args));
      |        ^~~~~
/home/cjnolet/miniconda3/envs/cuml_2108_072021_3/include/spdlog/fmt/bundled/format-inl.h: In function ‘void fmt::v8::format_system_error(fmt::v8::detail::buffer<char>&, int, const char*)’:
/home/cjnolet/miniconda3/envs/cuml_2108_072021_3/include/spdlog/fmt/bundled/format-inl.h:2545:32: error: expected primary-expression before ‘class’
 2545 |     write(std::back_inserter(out), std::system_error(ec, message).what());
      |                                ^~~~~
make[2]: *** [test/CMakeFiles/ml.dir/build.make:580: test/CMakeFiles/ml.dir/sg/umap_parametrizable_test.cu.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:1267: test/CMakeFiles/ml.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

It's strange the compile error is in an spdlog header. I did notice the spdlog readme mentions building w/ c++11.

@cjnolet cjnolet added bug Something isn't working ? - Needs Triage Need team to review and classify and removed ? - Needs Triage Need team to review and classify labels Jul 21, 2021
@cjnolet
Copy link
Member Author

cjnolet commented Jul 21, 2021

We've agreed to pin to spdlog 1.8.5 for now to get through release 21.08 and revist.

@github-actions
Copy link

This issue has been labeled inactive-90d due to no recent activity in the past 90 days. Please close this issue if no further response or action is needed. Otherwise, please respond with a comment indicating any updates or changes to the original issue and/or confirm this issue still needs to be addressed.

@github-actions
Copy link

This issue has been labeled inactive-30d due to no recent activity in the past 30 days. Please close this issue if no further response or action is needed. Otherwise, please respond with a comment indicating any updates or changes to the original issue and/or confirm this issue still needs to be addressed. This issue will be labeled inactive-90d if there is no activity in the next 60 days.

@vyasr
Copy link
Contributor

vyasr commented Feb 14, 2023

I just encountered this again with the recent changes to spdlog and fmt. The problem looks to be due to a using namespace std in a test where some names were being clobbered. I've fixed that in 201e265 as part of #5230.

rapids-bot bot pushed a commit that referenced this issue Feb 14, 2023
Fixes for supporting InnerProduct distance in the pairwise_distance api - required to handle the changes in rapidsai/raft#1226.

Also resolves #4078. That fix was necessary to tack on to this PR due to upstream RAPIDS updates to the spdlog version (in rmm via rapids-cmake).

Authors:
  - Ben Frederickson (https://github.com/benfred)
  - Vyas Ramasubramani (https://github.com/vyasr)

Approvers:
  - Corey J. Nolet (https://github.com/cjnolet)

URL: #5230
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working inactive-30d inactive-90d
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants