diff options
Diffstat (limited to 'mdk-stage1/dietlibc/libstdio/puts.c')
-rw-r--r-- | mdk-stage1/dietlibc/libstdio/puts.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/mdk-stage1/dietlibc/libstdio/puts.c b/mdk-stage1/dietlibc/libstdio/puts.c new file mode 100644 index 000000000..b1da01f9d --- /dev/null +++ b/mdk-stage1/dietlibc/libstdio/puts.c @@ -0,0 +1,16 @@ +#include <unistd.h> +#include <string.h> +#include "dietstdio.h" +#include "dietfeatures.h" + +int __cheap_outs(const char *s,size_t len); +int __cheap_outs(const char *s,size_t len) { + return (size_t)write(1,s,len)==len?1:0; +} + +int __stdio_outs(const char *s,size_t len) __attribute__((weak,alias("__cheap_outs"))); + +int puts(const char *s) { + return (__stdio_outs(s,strlen(s)) && __stdio_outs("\n",1))?0:-1; +} + |