1 /* Formatted output to strings.
2 Copyright (C) 1999, 2002, 2006-2007, 2009-2025 Free Software Foundation,
5 This file is free software.
6 It is dual-licensed under "the GNU LGPLv3+ or the GNU GPLv2+".
7 You can redistribute it and/or modify it under either
8 - the terms of the GNU Lesser General Public License as published
9 by the Free Software Foundation, either version 3, or (at your
10 option) any later version, or
11 - the terms of the GNU General Public License as published by the
12 Free Software Foundation; either version 2, or (at your option)
14 - the same dual license "the GNU LGPLv3+ or the GNU GPLv2+".
16 This file is distributed in the hope that it will be useful,
17 but WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 Lesser General Public License and the GNU General Public License
22 You should have received a copy of the GNU Lesser General Public
23 License and of the GNU General Public License along with this
24 program. If not, see <https://www.gnu.org/licenses/>. */
26 /* Tell glibc's <stdio.h> to provide a prototype for snprintf().
27 This must come before <config.h> because <config.h> may include
28 <features.h>, and once <features.h> has been included, it's too late. */
30 # define _GNU_SOURCE 1
41 #include "unistdio/u-printf-parse.h"
43 #define VASNPRINTF ulc_vasnprintf
45 #define DIRECTIVE char_directive
46 #define DIRECTIVES char_directives
47 #define FCHAR_T_ONLY_ASCII 1
48 #define PRINTF_PARSE ulc_printf_parse
50 #define DCHAR_CPY memcpy
51 #define DCHAR_SET memset
52 #define DCHAR_MBSNLEN mbsnlen
54 #define DCHAR_IS_TCHAR 1
55 #include "vasnprintf.c"