-
Notifications
You must be signed in to change notification settings - Fork 355
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
Using ADL everywhere for lexical_cast #820
Conversation
Codecov ReportBase: 99.44% // Head: 99.44% // Increases project coverage by
Additional details and impacted files@@ Coverage Diff @@
## main #820 +/- ##
=======================================
Coverage 99.44% 99.44%
=======================================
Files 16 16
Lines 3950 3959 +9
=======================================
+ Hits 3928 3937 +9
Misses 22 22
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
Looks like one minor issue with clang tidy, then could be merged. |
I don't think the CMAKE test issue is related to this PR. I will look into it more. |
Right now it's pretty much impossible to extend the library for custom template types because we can't have partial function template specializations in C++ (and thus cannot partially specialize
CLI::detail::lexical_cast
). Note that just throwing an overload intoCLI::detail
doesn't work because the overload should be visible at the call site, and to have that you'd have to first declare the overload, and only then include the CLI11 headers. Not very practical.This PR fixes it by making sure all calls to
lexical_cast
are done via argument-dependent lookup.