Replace single-chars std::string::operator+= calls with the char version

Someone ran a clang-tidy to replace this in BoringSSL. Upstream that.
Also replace a few more that could be char literals.

Change-Id: I6c1e1df9e531f4e35f536f4fac9dd94dfe379006
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/104168
Reviewed-by: Adam Langley <agl@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
Auto-Submit: David Benjamin <davidben@google.com>
diff --git a/crypto/bytestring/bytestring_test.cc b/crypto/bytestring/bytestring_test.cc
index 6395b42..aae1286 100644
--- a/crypto/bytestring/bytestring_test.cc
+++ b/crypto/bytestring/bytestring_test.cc
@@ -2221,7 +2221,7 @@
     EXPECT_EQ(CBS_len(&cbs), 0u);
 
     std::string str(t.text);
-    str += "Z";
+    str += 'Z';
     CBS_init(&cbs, reinterpret_cast<const uint8_t *>(str.data()), str.size());
     ASSERT_TRUE(CBS_get_u64_decimal(&cbs, &v));
     EXPECT_EQ(v, t.val);
diff --git a/pki/cert_error_params.cc b/pki/cert_error_params.cc
index 7c593e3..4b40c64 100644
--- a/pki/cert_error_params.cc
+++ b/pki/cert_error_params.cc
@@ -44,7 +44,7 @@
     std::string result;
     AppendDer(name1_, der1_, &result);
     if (name2_) {
-      result += "\n";
+      result += '\n';
       AppendDer(name2_, der2_, &result);
     }
     return result;
diff --git a/pki/parse_name.cc b/pki/parse_name.cc
index 60412af..b5c264e 100644
--- a/pki/parse_name.cc
+++ b/pki/parse_name.cc
@@ -135,11 +135,11 @@
         value_string += "\\ ";
       } else if (c == ',' || c == '+' || c == '"' || c == '\\' || c == '<' ||
                  c == '>' || c == ';') {
-        value_string += "\\";
+        value_string += '\\';
         value_string += c;
       } else if (c < 32 || c > 126) {
         nonprintable = true;
-        value_string += "\\" + bssl::string_util::HexEncode(Span(&c, 1));
+        value_string += '\\' + bssl::string_util::HexEncode(Span(&c, 1));
       } else {
         value_string += c;
       }
@@ -148,11 +148,11 @@
     // If we have non-printable characters in a TeletexString, we hex encode
     // since we don't handle Teletex control codes.
     if (nonprintable && value_tag == CBS_ASN1_T61STRING) {
-      value_string = "#" + bssl::string_util::HexEncode(value);
+      value_string = '#' + bssl::string_util::HexEncode(value);
     }
   }
 
-  *out = type_string + "=" + value_string;
+  *out = type_string + '=' + value_string;
   return true;
 }
 
@@ -223,7 +223,7 @@
     std::string rdn_string;
     for (const auto &atv : rdn) {
       if (!rdn_string.empty()) {
-        rdn_string += "+";
+        rdn_string += '+';
       }
       std::string atv_string;
       if (!atv.AsRFC2253String(&atv_string)) {
@@ -232,7 +232,7 @@
       rdn_string += atv_string;
     }
     if (!rdns_string.empty()) {
-      rdns_string += ",";
+      rdns_string += ',';
     }
     rdns_string += rdn_string;
   }
diff --git a/pki/path_builder.cc b/pki/path_builder.cc
index 8abe0ba..546c855 100644
--- a/pki/path_builder.cc
+++ b/pki/path_builder.cc
@@ -66,9 +66,9 @@
   std::string s;
   for (const auto &cert : certs) {
     if (!s.empty()) {
-      s += "\n";
+      s += '\n';
     }
-    s += " " + CertDebugString(cert.get());
+    s += ' ' + CertDebugString(cert.get());
   }
   return s;
 }
diff --git a/ssl/ssl_test.cc b/ssl/ssl_test.cc
index c24997d..ecff1a0 100644
--- a/ssl/ssl_test.cc
+++ b/ssl/ssl_test.cc
@@ -575,12 +575,12 @@
       ret += "\t[\n";
       in_group = true;
     }
-    ret += "\t";
+    ret += '\t';
     if (in_group) {
       ret += "  ";
     }
     ret += SSL_CIPHER_get_name(cipher);
-    ret += "\n";
+    ret += '\n';
     if (in_group && !SSL_CTX_cipher_in_group(ctx, i)) {
       ret += "\t]\n";
       in_group = false;
@@ -6701,7 +6701,7 @@
   }
   char retry_count[256];
   snprintf(retry_count, sizeof(retry_count), "%u", std::get<1>(params.param));
-  ret += "_";
+  ret += '_';
   ret += retry_count;
   ret += "Retries_";
   switch (std::get<2>(params.param)) {
@@ -7044,7 +7044,7 @@
     ret += std::string(buf);
   }
 
-  ret += "}";
+  ret += '}';
   return ret;
 }