From 9d247dc831569a4db75ec9466d1a988a82dfba29 Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Fri, 23 Oct 2026 21:09:14 +0200 Subject: First commit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- LIBUTF8_REPLACE_INVALID.3 | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 LIBUTF8_REPLACE_INVALID.3 (limited to 'LIBUTF8_REPLACE_INVALID.3') diff --git a/LIBUTF8_REPLACE_INVALID.3 b/LIBUTF8_REPLACE_INVALID.3 new file mode 100644 index 0000000..3919226 --- /dev/null +++ b/LIBUTF8_REPLACE_INVALID.3 @@ -0,0 +1,37 @@ +.TH LIBUTF8_REPLACE_INVALID 3 LIBUTF8 +.SH NAME +LIBUTF8_REPLACE_INVALID - Replace decoded invalid Unicode codepoints + +.SH SYNOPSIS +.nf +#include + +#define \fBLIBUTF8_REPLACE_INVALID\fP /* implementation omitted */ +.fi + +.SH DESCRIPTION +The +.B LIBUTF8_REPLACE_INVALID +macro is a flag for +.BR libutf8_decode (3) +and +.BR libutf8_decode_mem (3). +It causes those functions to replace a decoded invalid Unicode codepoint with +.BR LIBUTF8_REPLACEMENT_CHARACTER_CODEPOINT (3) +rather than reject it. +.PP +The flag applies to non-character codepoints (see +.BR libutf8_is_noncharacter (3) +for definition) and UTF-16 surrogates. +It does not make illegal byte sequences, overlong encodings, +or codepoints above +.B LIBUTF8_ULTIMATE_CODEPOINT +valid. + +.SH SEE ALSO +.BR libutf8 (7), +.BR LIBUTF8_RETURN_INVALID (3), +.BR LIBUTF8_REPLACEMENT_CHARACTER_CODEPOINT (3), +.BR libutf8_is_continuation (3), +.BR libutf8_decode (3), +.BR libutf8_decode_mem (3) -- cgit v1.3.1