#ifdef HAVE_GOOD_PRINTF
-#define _g_printf printf
-#define _g_fprintf fprintf
-#define _g_sprintf sprintf
-#define _g_snprintf snprintf
-
-#define _g_vprintf vprintf
-#define _g_vfprintf vfprintf
-#define _g_vsprintf vsprintf
+#define _g_printf printf
+#define _g_fprintf fprintf
+#define _g_sprintf sprintf
+#define _g_snprintf snprintf
+
+#define _g_vprintf vprintf
+#define _g_vfprintf vfprintf
+#define _g_vsprintf vsprintf
#define _g_vsnprintf vsnprintf
#define _g_vasprintf vasprintf
#else
+#include "trio/glibtrio.h"
#include "trio/trio.h"
-#define _g_printf trio_printf
-#define _g_fprintf trio_fprintf
-#define _g_sprintf trio_sprintf
-#define _g_snprintf trio_snprintf
+#define _g_printf _g_trio_printf
+#define _g_fprintf _g_trio_fprintf
+#define _g_sprintf _g_trio_sprintf
+#define _g_snprintf _g_trio_snprintf
-#define _g_vprintf trio_vprintf
-#define _g_vfprintf trio_vfprintf
-#define _g_vsprintf trio_vsprintf
-#define _g_vsnprintf trio_vsnprintf
+#define _g_vprintf _g_trio_vprintf
+#define _g_vfprintf _g_trio_vfprintf
+#define _g_vsprintf _g_trio_vsprintf
+#define _g_vsnprintf _g_trio_vsnprintf
-#define _g_vasprintf trio_vasprintf
+#define _g_vasprintf _g_trio_vasprintf
#endif
--- /dev/null
+#define TrioCalcThousandSeparatorLength _GTrioCalcThousandSeparatorLength
+#define TrioDuplicateMax _GTrioDuplicateMax
+#define TrioFollowedBySeparator _GTrioFollowedBySeparator
+#define TrioFormat _GTrioFormat
+#define TrioFormatProcess _GTrioFormatProcess
+#define TrioFormatRef _GTrioFormatRef
+#define TrioGetCharacterClass _GTrioGetCharacterClass
+#define TrioGetPosition _GTrioGetPosition
+#define TrioInStreamCustom _GTrioInStreamCustom
+#define TrioInStreamFile _GTrioInStreamFile
+#define TrioInStreamFileDescriptor _GTrioInStreamFileDescriptor
+#define TrioInStreamString _GTrioInStreamString
+#define TrioIsQualifier _GTrioIsQualifier
+#define TrioLogarithm _GTrioLogarithm
+#define TrioLogarithmBase _GTrioLogarithmBase
+#define TrioOutStreamCustom _GTrioOutStreamCustom
+#define TrioOutStreamFile _GTrioOutStreamFile
+#define TrioOutStreamFileDescriptor _GTrioOutStreamFileDescriptor
+#define TrioOutStreamString _GTrioOutStreamString
+#define TrioOutStreamStringDynamic _GTrioOutStreamStringDynamic
+#define TrioOutStreamStringMax _GTrioOutStreamStringMax
+#define TrioParse _GTrioParse
+#define TrioPower _GTrioPower
+#define TrioReadChar _GTrioReadChar
+#define TrioReadDouble _GTrioReadDouble
+#define TrioReadGroup _GTrioReadGroup
+#define TrioReadNumber _GTrioReadNumber
+#define TrioReadPointer _GTrioReadPointer
+#define TrioReadString _GTrioReadString
+#define TrioScan _GTrioScan
+#define TrioScanProcess _GTrioScanProcess
+#define TrioSetLocale _GTrioSetLocale
+#define TrioSkipWhitespaces _GTrioSkipWhitespaces
+#define TrioStringAlloc _GTrioStringAlloc
+#define TrioStringGrow _GTrioStringGrow
+#define TrioStringGrowTo _GTrioStringGrowTo
+#define TrioWriteDouble _GTrioWriteDouble
+#define TrioWriteNumber _GTrioWriteNumber
+#define TrioWriteString _GTrioWriteString
+#define TrioWriteStringCharacter _GTrioWriteStringCharacter
+#define trio_append _g_trio_append
+#define trio_append_max _g_trio_append_max
+#define trio_aprintf _g_trio_aprintf
+#define trio_asprintf _g_trio_asprintf
+#define trio_contains _g_trio_contains
+#define trio_copy _g_trio_copy
+#define trio_copy_max _g_trio_copy_max
+#define trio_cprintf _g_trio_cprintf
+#define trio_cprintfv _g_trio_cprintfv
+#define trio_create _g_trio_create
+#define trio_cscanf _g_trio_cscanf
+#define trio_cscanfv _g_trio_cscanfv
+#define trio_destroy _g_trio_destroy
+#define trio_dprintf _g_trio_dprintf
+#define trio_dprintfv _g_trio_dprintfv
+#define trio_dscanf _g_trio_dscanf
+#define trio_dscanfv _g_trio_dscanfv
+#define trio_duplicate _g_trio_duplicate
+#define trio_duplicate_max _g_trio_duplicate_max
+#define trio_equal _g_trio_equal
+#define trio_equal_case _g_trio_equal_case
+#define trio_equal_case_max _g_trio_equal_case_max
+#define trio_equal_locale _g_trio_equal_locale
+#define trio_equal_max _g_trio_equal_max
+#define trio_error _g_trio_error
+#define trio_format_date_max _g_trio_format_date_max
+#define trio_fpclassify _g_trio_fpclassify
+#define trio_fpclassify_and_signbit _g_trio_fpclassify_and_signbit
+#define trio_fprintf _g_trio_fprintf
+#define trio_fprintfv _g_trio_fprintfv
+#define trio_fscanf _g_trio_fscanf
+#define trio_fscanfv _g_trio_fscanfv
+#define trio_hash _g_trio_hash
+#define trio_index _g_trio_index
+#define trio_index_last _g_trio_index_last
+#define trio_is_negative _g_trio_is_negative
+#define trio_is_special_quantity _g_trio_is_special_quantity
+#define trio_isfinite _g_trio_isfinite
+#define trio_isinf _g_trio_isinf
+#define trio_isnan _g_trio_isnan
+#define trio_length _g_trio_length
+#define trio_locale_set_decimal_point _g_trio_locale_set_decimal_point
+#define trio_locale_set_grouping _g_trio_locale_set_grouping
+#define trio_locale_set_thousand_separator _g_trio_locale_set_thousand_separator
+#define trio_lower _g_trio_lower
+#define trio_make_double _g_trio_make_double
+#define trio_match _g_trio_match
+#define trio_match_case _g_trio_match_case
+#define trio_nan _g_trio_nan
+#define trio_ninf _g_trio_ninf
+#define trio_nzero _g_trio_nzero
+#define trio_pinf _g_trio_pinf
+#define trio_print_pointer _g_trio_print_pointer
+#define trio_printf _g_trio_printf
+#define trio_printfv _g_trio_printfv
+#define trio_scanf _g_trio_scanf
+#define trio_scanfv _g_trio_scanfv
+#define trio_signbit _g_trio_signbit
+#define trio_snprintf _g_trio_snprintf
+#define trio_snprintfcat _g_trio_snprintfcat
+#define trio_snprintfv _g_trio_snprintfv
+#define trio_span_function _g_trio_span_function
+#define trio_sprintf _g_trio_sprintf
+#define trio_sprintfv _g_trio_sprintfv
+#define trio_sscanf _g_trio_sscanf
+#define trio_sscanfv _g_trio_sscanfv
+#define trio_strerror _g_trio_strerror
+#define trio_string_append _g_trio_string_append
+#define trio_string_contains _g_trio_string_contains
+#define trio_string_copy _g_trio_string_copy
+#define trio_string_create _g_trio_string_create
+#define trio_string_destroy _g_trio_string_destroy
+#define trio_string_duplicate _g_trio_string_duplicate
+#define trio_string_equal _g_trio_string_equal
+#define trio_string_equal_case _g_trio_string_equal_case
+#define trio_string_equal_case_max _g_trio_string_equal_case_max
+#define trio_string_equal_max _g_trio_string_equal_max
+#define trio_string_extract _g_trio_string_extract
+#define trio_string_format_date_max _g_trio_string_format_date_max
+#define trio_string_get _g_trio_string_get
+#define trio_string_index _g_trio_string_index
+#define trio_string_index_last _g_trio_string_index_last
+#define trio_string_length _g_trio_string_length
+#define trio_string_lower _g_trio_string_lower
+#define trio_string_match _g_trio_string_match
+#define trio_string_match_case _g_trio_string_match_case
+#define trio_string_size _g_trio_string_size
+#define trio_string_substring _g_trio_string_substring
+#define trio_string_terminate _g_trio_string_terminate
+#define trio_string_upper _g_trio_string_upper
+#define trio_substring _g_trio_substring
+#define trio_substring_max _g_trio_substring_max
+#define trio_to_double _g_trio_to_double
+#define trio_to_float _g_trio_to_float
+#define trio_to_long _g_trio_to_long
+#define trio_to_long_double _g_trio_to_long_double
+#define trio_to_unsigned_long _g_trio_to_unsigned_long
+#define trio_tokenize _g_trio_tokenize
+#define trio_upper _g_trio_upper
+#define trio_vaprintf _g_trio_vaprintf
+#define trio_vasprintf _g_trio_vasprintf
+#define trio_vcprintf _g_trio_vcprintf
+#define trio_vcscanf _g_trio_vcscanf
+#define trio_vdprintf _g_trio_vdprintf
+#define trio_vdscanf _g_trio_vdscanf
+#define trio_vfprintf _g_trio_vfprintf
+#define trio_vfscanf _g_trio_vfscanf
+#define trio_vprintf _g_trio_vprintf
+#define trio_vscanf _g_trio_vscanf
+#define trio_vsnprintf _g_trio_vsnprintf
+#define trio_vsnprintfcat _g_trio_vsnprintfcat
+#define trio_vsprintf _g_trio_vsprintf
+#define trio_vsscanf _g_trio_vsscanf
+#define trio_xstring_append _g_trio_xstring_append
+#define trio_xstring_append_char _g_trio_xstring_append_char
+#define trio_xstring_contains _g_trio_xstring_contains
+#define trio_xstring_copy _g_trio_xstring_copy
+#define trio_xstring_duplicate _g_trio_xstring_duplicate
+#define trio_xstring_equal _g_trio_xstring_equal
+#define trio_xstring_equal_case _g_trio_xstring_equal_case
+#define trio_xstring_equal_case_max _g_trio_xstring_equal_case_max
+#define trio_xstring_equal_max _g_trio_xstring_equal_max
+#define trio_xstring_match _g_trio_xstring_match
+#define trio_xstring_match_case _g_trio_xstring_match_case
+#define trio_xstring_set _g_trio_xstring_set
+#define trio_xstring_substring _g_trio_xstring_substring