--- ../node-re2-1.19.1/binding.gyp.orig 2023-06-16 04:48:53.000000000 +0800 +++ ../node-re2-1.19.1/binding.gyp 2023-09-10 23:30:27.001674000 +0800 @@ -50,6 +50,9 @@ "-O3", "-g" ], + "cflags_cc": [ + "-std=c++17", + ], "defines": [ "NDEBUG", "NOMINMAX" --- ../node-re2-1.19.1/lib/replace.cc.orig 2023-06-16 04:48:53.000000000 +0800 +++ ../node-re2-1.19.1/lib/replace.cc 2023-09-10 21:25:51.818852000 +0800 @@ -107,7 +107,7 @@ i += 2; continue; case '&': - result += groups[0].as_string(); + result += std::string(groups[0]); i += 2; continue; case '`': @@ -139,7 +139,7 @@ index2 = index * 10 + (ch - '0'); if (index2 && index2 < groups.size()) { - result += groups[index2].as_string(); + result += std::string(groups[index2]); continue; } result += '$'; @@ -152,7 +152,7 @@ i += 2; if (index && index < groups.size()) { - result += groups[index].as_string(); + result += std::string(groups[index]); continue; } result += '$'; @@ -170,7 +170,7 @@ if (group != namedGroups.end()) { index = group->second; - result += groups[index].as_string(); + result += std::string(groups[index]); } i = nameEnd + 1 - data; }