1/* Formatted output to UTF-32 strings. 2 Copyright (C) 1999, 2002, 2006-2007, 2009-2010 Free Software Foundation, 3 Inc. 4 5 This program is free software: you can redistribute it and/or modify it 6 under the terms of the GNU Lesser General Public License as published 7 by the Free Software Foundation; either version 3 of the License, or 8 (at your option) any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 Lesser General Public License for more details. 14 15 You should have received a copy of the GNU Lesser General Public License 16 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 17 18/* Tell glibc's <stdio.h> to provide a prototype for snprintf(). 19 This must come before <config.h> because <config.h> may include 20 <features.h>, and once <features.h> has been included, it's too late. */ 21#ifndef _GNU_SOURCE 22# define _GNU_SOURCE 1 23#endif 24 25#include <config.h> 26#include <alloca.h> 27 28/* Specification. */ 29#include "unistdio.h" 30 31#include "uniconv.h" 32#include "unistr.h" 33#include "unistdio/u-printf-parse.h" 34 35#define VASNPRINTF u32_vasnprintf 36#define FCHAR_T char 37#define DIRECTIVE char_directive 38#define DIRECTIVES char_directives 39#define ASCII_ONLY 1 40#define PRINTF_PARSE ulc_printf_parse 41#define DCHAR_T uint32_t 42#define DCHAR_T_IS_UINT32_T 1 43#define DCHAR_CPY u32_cpy 44#define DCHAR_SET u32_set 45#define DCHAR_MBSNLEN u32_mbsnlen 46#define DCHAR_IS_UINT32_T 1 47#define U8_TO_DCHAR u8_to_u32 48#define U16_TO_DCHAR u16_to_u32 49#define DCHAR_CONV_FROM_ENCODING u32_conv_from_encoding 50#define TCHAR_T char 51#include "vasnprintf.c" 52