From 2d8a8eebb03e509840e2c3c755d1abf32d930f33 Mon Sep 17 00:00:00 2001 From: Haowen Liu <35328328+lunacd@users.noreply.github.com> Date: Tue, 22 Apr 2025 08:02:05 -0400 Subject: [PATCH] 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. --- subprocess.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/subprocess.hpp b/subprocess.hpp index c479199..c92f56a 100755 --- a/subprocess.hpp +++ b/subprocess.hpp @@ -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; };