diff options
author | Louis Dionne <ldionne.2@gmail.com> | 2022-11-17 10:47:18 -0500 |
---|---|---|
committer | Louis Dionne <ldionne.2@gmail.com> | 2022-11-23 09:51:01 -0500 |
commit | aeecef08c385b1e4955155dd649a2d3724463849 (patch) | |
tree | bef059bedcb4a4a4b3a304f0208936fff5618c4a /llvm/lib/Transforms/Utils/LoopVersioning.cpp | |
parent | 647ddc08f43c05131031cfe3c6114d7870f5a117 (diff) | |
download | llvm-aeecef08c385b1e4955155dd649a2d3724463849.zip llvm-aeecef08c385b1e4955155dd649a2d3724463849.tar.gz llvm-aeecef08c385b1e4955155dd649a2d3724463849.tar.bz2 |
[libc++] Remove default definition of std::char_traits
This patch removes the base template implementation for std::char_traits.
If my reading of http://eel.is/c++draft/char.traits is correct, the
Standard mandates that the library provides specializations for several
types like char and wchar_t, but not any implementation in the base
template. Indeed, such an implementation is bound to be incorrect for
most types anyways, since things like `eof()` and `int_type` will definitely
have to be customized.
Since the base template implementation should not have worked for anyone,
this shouldn't be a breaking change (I expect that anyone defining a
custom character type today will already have to provide their own
specialization of char_traits). However, since we're aware of some users
of char_traits for unsigned char and signed char, we're keeping those two
specializations around for two releases to give people some time to migrate.
Differential Revision: https://reviews.llvm.org/D138307
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopVersioning.cpp')
0 files changed, 0 insertions, 0 deletions