Fix warnings preventing copy elision.
authorPavel Labath <labath@google.com>
Thu, 25 Aug 2016 08:22:14 +0000 (08:22 +0000)
committerPavel Labath <labath@google.com>
Thu, 25 Aug 2016 08:22:14 +0000 (08:22 +0000)
Summary:
Moving a temporary object prevents copy elision, which is exactly
what clang points out by warning about this pattern.

The fix is simply removal of std::move applied to temporary objects.

Reviewers: clayborg

Subscribers: lldb-commits

Differential Revision: https://reviews.llvm.org/D23825
Author: Taras Tsugrii <ttsugrii@fb.com>

llvm-svn: 279724

lldb/tools/debugserver/source/JSON.cpp

index e7e0423..9d56d19 100644 (file)
@@ -372,7 +372,7 @@ JSONParser::GetToken (std::string &value)
                     if (escaped_ch == -1)
                     {
                         error << "error: an error occurred getting a character from offset " <<start_index;
-                        value = std::move(error.str());
+                        value = error.str();
                         return Token::Error;
 
                     }
@@ -390,7 +390,7 @@ JSONParser::GetToken (std::string &value)
                             {
                                 error << "error: wide character support is needed for unicode character 0x" << std::setprecision(4) << std::hex << escaped_ch;
                                 error << " at offset " << start_index;
-                                value = std::move(error.str());
+                                value = error.str();
                                 return Token::Error;
                             }
                         }
@@ -460,7 +460,7 @@ JSONParser::GetToken (std::string &value)
                             if (got_decimal_point)
                             {
                                 error << "error: extra decimal point found at offset " << start_index;
-                                value = std::move(error.str());
+                                value = error.str();
                                 return Token::Error;
                             }
                             else
@@ -475,7 +475,7 @@ JSONParser::GetToken (std::string &value)
                             if (exp_index != 0)
                             {
                                 error << "error: extra exponent character found at offset " << start_index;
-                                value = std::move(error.str());
+                                value = error.str();
                                 return Token::Error;
                             }
                             else
@@ -495,7 +495,7 @@ JSONParser::GetToken (std::string &value)
                             else
                             {
                                 error << "error: unexpected " << next_ch << " character at offset " << start_index;
-                                value = std::move(error.str());
+                                value = error.str();
                                 return Token::Error;
                             }
                             break;
@@ -521,7 +521,7 @@ JSONParser::GetToken (std::string &value)
                             else
                             {
                                 error << "error: got exponent character but no exponent digits at offset in float value \"" << value.c_str() << "\"";
-                                value = std::move(error.str());
+                                value = error.str();
                                 return Token::Error;
                             }
                         }
@@ -535,7 +535,7 @@ JSONParser::GetToken (std::string &value)
                             else
                             {
                                 error << "error: no digits after decimal point \"" << value.c_str() << "\"";
-                                value = std::move(error.str());
+                                value = error.str();
                                 return Token::Error;
                             }
                         }
@@ -551,7 +551,7 @@ JSONParser::GetToken (std::string &value)
                         else
                         {
                             error << "error: no digits negate sign \"" << value.c_str() << "\"";
-                            value = std::move(error.str());
+                            value = error.str();
                             return Token::Error;
                         }
                     }
@@ -559,7 +559,7 @@ JSONParser::GetToken (std::string &value)
                 else
                 {
                     error << "error: invalid number found at offset " << start_index;
-                    value = std::move(error.str());
+                    value = error.str();
                     return Token::Error;
                 }
             }
@@ -568,7 +568,7 @@ JSONParser::GetToken (std::string &value)
             break;
     }
     error << "error: failed to parse token at offset " << start_index << " (around character '" << ch << "')";
-    value = std::move(error.str());
+    value = error.str();
     return Token::Error;
 }