Fix string_arg when used with rref (#110)

When passing in a rvalue reference, compiler
considers it ambiguous between std::string and
std::string&&. Making one of them take a lvalue
reference makes compilers correctly pick the right
one depending on whether the passed in value binds
to a rvalue or lvalue reference.
This commit is contained in:
Haowen Liu 2025-04-22 08:02:05 -04:00 committed by GitHub
parent beda7b5244
commit 2d8a8eebb0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -708,7 +708,7 @@ struct string_arg
{
string_arg(const char* arg): arg_value(arg) {}
string_arg(std::string&& arg): arg_value(std::move(arg)) {}
string_arg(std::string arg): arg_value(std::move(arg)) {}
string_arg(const std::string& arg): arg_value(arg) {}
std::string arg_value;
};