rust: fix build on older clang

A rustic stock Ubuntu 16.04 clang refused to build the map.insert call
in rust_target_generator.cc. Fix by avoiding an explicit std::pair
constructor call, and a suspicious std::move on another map's key.
Call map.emplace instead, with an explicit StringPiece-to-std::string
conversion.

Change-Id: Icb3ce534fa509dc7aba6cb5cef93912eb94cbca7
Reviewed-on: https://gn-review.googlesource.com/c/gn/+/5180
Reviewed-by: Julie Hockett <juliehockett@google.com>
Reviewed-by: Brett Wilson <brettw@google.com>
Commit-Queue: Brett Wilson <brettw@google.com>
diff --git a/tools/gn/rust_target_generator.cc b/tools/gn/rust_target_generator.cc
index 1dad154..53d78cc 100644
--- a/tools/gn/rust_target_generator.cc
+++ b/tools/gn/rust_target_generator.cc
@@ -189,8 +189,8 @@
       return false;
 
     // Insert into the aliased_deps map.
-    target_->rust_values().aliased_deps().insert(std::pair<Label, std::string>(
-        std::move(dep_label), std::move(pair.first)));
+    target_->rust_values().aliased_deps().emplace(
+        std::move(dep_label), pair.first.as_string());
   }
 
   return true;