summaryrefslogtreecommitdiff
path: root/absl/strings/internal/char_map.h
diff options
context:
space:
mode:
Diffstat (limited to 'absl/strings/internal/char_map.h')
-rw-r--r--absl/strings/internal/char_map.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/absl/strings/internal/char_map.h b/absl/strings/internal/char_map.h
index 5aabc1fc..70a90343 100644
--- a/absl/strings/internal/char_map.h
+++ b/absl/strings/internal/char_map.h
@@ -73,10 +73,10 @@ class Charmap {
}
// Containing all the chars in the C-string 's'.
- // Note that this is expensively recursive because of the C++11 constexpr
- // formulation. Use only in constexpr initializers.
static constexpr Charmap FromString(const char* s) {
- return *s == 0 ? Charmap() : (Char(*s) | FromString(s + 1));
+ Charmap ret;
+ while (*s) ret = ret | Char(*s++);
+ return ret;
}
// Containing all the chars in the closed interval [lo,hi].