summaryrefslogtreecommitdiff
path: root/src/u8c/vprint.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/u8c/vprint.c')
-rw-r--r--src/u8c/vprint.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/src/u8c/vprint.c b/src/u8c/vprint.c
index 503ca88..6dc30ae 100644
--- a/src/u8c/vprint.c
+++ b/src/u8c/vprint.c
@@ -15,29 +15,31 @@
*/
# include <assert.h>
# include <stdarg.h>
+# include <stdbool.h>
# include <stdint.h>
# include <stdio.h>
# include <stdlib.h>
+# include <u8c/SIZE_C.h>
# include <u8c/seterr.h>
# include <u8c/u32free.h>
# include <u8c/u8enc.h>
# include <u8c/u8free.h>
-# include <u8c/SIZE_C.h>
# include <u8c/vfmt.h>
# include <u8c/vprint.h>
-uint_least8_t u8c_vprint(FILE * _fp,uint_least32_t const * const _msg,va_list _args) {
+# include <uchar.h>
+bool u8c_vprint(FILE * _fp,char32_t const * const _msg,va_list _args) {
assert(_msg != NULL);
- uint_least32_t const * str0 = NULL;
+ char32_t const * str0 = NULL;
u8c_vfmt(NULL,&str0,_msg,_args);
- size_t str1sz = SIZE_C(0x0);
- uint_least8_t const * str1 = NULL;
+ size_t str1sz = SIZE_C(0x0);
+ unsigned char const * str1 = NULL;
u8c_u8enc(&str1sz,&str1,str0);
assert(str1sz > SIZE_C(0x0));
if(fwrite(str1,sizeof(uint_least8_t),str1sz - SIZE_C(0x1),_fp) < str1sz - SIZE_C(0x1)) {
- u8c_seterr((uint_least32_t[]){UINT32_C(0x75),UINT32_C(0x38),UINT32_C(0x63),UINT32_C(0x5F),UINT32_C(0x76),UINT32_C(0x70),UINT32_C(0x72),UINT32_C(0x69),UINT32_C(0x6E),UINT32_C(0x74),UINT32_C(0x3A),UINT32_C(0x20),UINT32_C(0x66),UINT32_C(0x77),UINT32_C(0x72),UINT32_C(0x69),UINT32_C(0x74),UINT32_C(0x65),UINT32_C(0x3A),UINT32_C(0x20),UINT32_C(0x55),UINT32_C(0x6E),UINT32_C(0x61),UINT32_C(0x62),UINT32_C(0x6C),UINT32_C(0x65),UINT32_C(0x20),UINT32_C(0x74),UINT32_C(0x6F),UINT32_C(0x20),UINT32_C(0x77),UINT32_C(0x72),UINT32_C(0x69),UINT32_C(0x74),UINT32_C(0x65),UINT32_C(0x20),UINT32_C(0x74),UINT32_C(0x6F),UINT32_C(0x20),UINT32_C(0x73),UINT32_C(0x74),UINT32_C(0x64),UINT32_C(0x6F),UINT32_C(0x75),UINT32_C(0x74),UINT32_C(0x2E),UINT32_C(0x0),}); /* u8c_vprint: fwrite: Unable to write to stdout. */
- return UINT8_C(0x1);
+ u8c_seterr(U"u8c_vprint: fwrite: Unable to write to stdout.");
+ return true;
}
- u8c_u32free(str0);
- u8c_u8free(str1);
- return UINT8_C(0x0);
+ u8c_u32free(&str0);
+ u8c_u8free(&str1);
+ return false;
}