Based on the review comments in D153201 this combines the string and
c-string constructors. The common constructor is using a string_view:
- it allows propagating the _Traits, which are required to be used for comparison.
- it avoids allocating
- libc++ supports it in C++03
Commit message typo: commont.