diff options
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | errno.c | 34 | ||||
-rw-r--r-- | main.c | 1 |
3 files changed, 38 insertions, 1 deletions
@@ -5,7 +5,7 @@ include config.mk CFLAGS=-g -I$(INCLUDEDIR) -nostdinc -fno-builtin LDFLAGS=-L$(LIBDIR) $(LIBS) -TESTOBJS=main.o test.o assert.o ctype.o locale.o +TESTOBJS=main.o test.o assert.o ctype.o locale.o errno.o testlibc: $(TESTOBJS) $(LIBDIR)/libc.a $(CC) -o $@ $(TESTOBJS) $(LDFLAGS) @@ -16,6 +16,8 @@ ctype.o: ctype.c test.h locale.o: locale.c test.h +errno.o: errno.c test.h + test.o: test.c test.h main.o: main.c test.h @@ -0,0 +1,34 @@ +#include <errno.h> +#include "test.h" + +#ifndef EDOM +#error EDOM not defined +#endif + +#ifndef ERANGE +#error ERANGE not defined +#endif + +#if __STDC_VERSION__ >= 199409 +#ifndef EILSEQ +#error EILSEQ not defined +#endif +#endif + +void test_errno(void) +{ + struct lconv *lc; + int errno_values[] = { + EDOM, + ERANGE, + #ifdef EILSEQ + EILSEQ, + #endif + }; + + testing_header("errno.h"); + + test_distinct(errno_values); + + testing_end(); +} @@ -9,6 +9,7 @@ int main(int argc, char *argv[]) } } + test_errno(); test_ctype(); test_locale(); return 0; |