diff --git a/src/libexpr/primops/flakeref.cc b/src/libexpr/primops/flakeref.cc
index 6c90c3b64..24af09124 100644
--- a/src/libexpr/primops/flakeref.cc
+++ b/src/libexpr/primops/flakeref.cc
@@ -60,7 +60,8 @@ FlakeRef::FlakeRef(const std::string & uri_, bool allowRelative)
 
     static std::regex subDirRegex2(subDirRegex, std::regex::ECMAScript);
 
-    auto [uri, params] = splitUriAndParams(uri_);
+    auto [uri2, params] = splitUriAndParams(uri_);
+    std::string uri(uri2);
 
     auto handleSubdir = [&](const std::string & name, const std::string & value) {
         if (name == "dir") {