1 //===----------------------------------------------------------------------===//
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
11 // template <class Elem, unsigned long Maxcode = 0x10ffff,
12 // codecvt_mode Mode = (codecvt_mode)0>
14 // : public codecvt<Elem, char, mbstate_t>
20 // unshift(stateT& state,
21 // externT* to, externT* to_end, externT*& to_next) const;
26 #include "test_macros.h"
31 typedef std::codecvt_utf8
<wchar_t> C
;
36 std::codecvt_base::result r
= c
.unshift(m
, n
, n
+4, np
);
37 assert(r
== std::codecvt_base::noconv
);
40 typedef std::codecvt_utf8
<char16_t
> C
;
45 std::codecvt_base::result r
= c
.unshift(m
, n
, n
+4, np
);
46 assert(r
== std::codecvt_base::noconv
);
49 typedef std::codecvt_utf8
<char32_t
> C
;
54 std::codecvt_base::result r
= c
.unshift(m
, n
, n
+4, np
);
55 assert(r
== std::codecvt_base::noconv
);