From 78ef2e7d2a5a642bf35794f0a40e3fe809997273 Mon Sep 17 00:00:00 2001 From: trainstopperd Date: Wed, 6 Sep 2023 23:28:33 -0400 Subject: [PATCH] test: unsigned add check --- Makefile.modernunix | 29 +++++++++++++++++++++++++++++ Makefile.msvc | 29 +++++++++++++++++++++++++++++ Makefile.oldunix | 29 +++++++++++++++++++++++++++++ Makefile.unix | 29 +++++++++++++++++++++++++++++ Makefile.watcom | 34 ++++++++++++++++++++++++++++++++++ src/liberror/public.h | 3 ++- tests/unsigned_add_check.c | 13 +++++++++++++ 7 files changed, 165 insertions(+), 1 deletion(-) create mode 100644 Makefile.modernunix create mode 100644 Makefile.msvc create mode 100644 Makefile.oldunix create mode 100644 Makefile.unix create mode 100644 Makefile.watcom create mode 100755 tests/unsigned_add_check.c diff --git a/Makefile.modernunix b/Makefile.modernunix new file mode 100644 index 0000000..3900668 --- /dev/null +++ b/Makefile.modernunix @@ -0,0 +1,29 @@ +CC=cc +CFLAGS=-Isrc -DCWARE_SAFETY_CHECKS -Wall -Wextra -g +OBJS= +BINS=tests/test tests/assert tests/unsigned_add_check + +.SUFFIXES: + +all: $(OBJS) $(BINS) + +tests/test: tests/test.c src/liberror/public.h + $(CC) -o tests/test $(CFLAGS) $(LDFLAGS) $(OBJS) tests/test.c + +tests/assert: tests/assert.c src/liberror/public.h + $(CC) -o tests/assert $(CFLAGS) $(LDFLAGS) $(OBJS) tests/assert.c + +tests/unsigned_add_check: tests/unsigned_add_check.c src/liberror/public.h + $(CC) -o tests/unsigned_add_check $(CFLAGS) $(LDFLAGS) $(OBJS) tests/unsigned_add_check.c + +clean: + rm -rf $(OBJS) + rm -rf $(BINS) + +check: + /bin/echo Running test tests/test + tests/test + /bin/echo Running test tests/assert + tests/assert + /bin/echo Running test tests/unsigned_add_check + tests/unsigned_add_check diff --git a/Makefile.msvc b/Makefile.msvc new file mode 100644 index 0000000..e38fa13 --- /dev/null +++ b/Makefile.msvc @@ -0,0 +1,29 @@ +CC=cl +CFLAGS=/I src /DCWARE_SAFETY_CHECKS /Zc:__STDC__ +OBJS= +BINS=tests\test.exe tests\assert.exe tests\unsigned_add_check.exe + +.SUFFIXES: + +all: $(OBJS) $(BINS) + +tests\test.exe: tests\test.c src\liberror\public.h + $(CC) /Fe:tests\test.exe $(CFLAGS) $(LDFLAGS) $(OBJS) tests\test.c + +tests\assert.exe: tests\assert.c src\liberror\public.h + $(CC) /Fe:tests\assert.exe $(CFLAGS) $(LDFLAGS) $(OBJS) tests\assert.c + +tests\unsigned_add_check.exe: tests\unsigned_add_check.c src\liberror\public.h + $(CC) /Fe:tests\unsigned_add_check.exe $(CFLAGS) $(LDFLAGS) $(OBJS) tests\unsigned_add_check.c + +clean: + del $(OBJS) + del $(BINS) + +check: + echo Running test tests\test + tests\test.exe + echo Running test tests\assert + tests\assert.exe + echo Running test tests\unsigned_add_check + tests\unsigned_add_check.exe diff --git a/Makefile.oldunix b/Makefile.oldunix new file mode 100644 index 0000000..e57e8b6 --- /dev/null +++ b/Makefile.oldunix @@ -0,0 +1,29 @@ +CC=cc +CFLAGS=-Isrc -DCWARE_SAFETY_CHECKS +OBJS= +BINS=tests/test tests/assert tests/unsigned_add_check + +.SUFFIXES: + +all: $(OBJS) $(BINS) + +tests/test: tests/test.c src/liberror/public.h + $(CC) -o tests/test $(CFLAGS) $(LDFLAGS) $(OBJS) tests/test.c + +tests/assert: tests/assert.c src/liberror/public.h + $(CC) -o tests/assert $(CFLAGS) $(LDFLAGS) $(OBJS) tests/assert.c + +tests/unsigned_add_check: tests/unsigned_add_check.c src/liberror/public.h + $(CC) -o tests/unsigned_add_check $(CFLAGS) $(LDFLAGS) $(OBJS) tests/unsigned_add_check.c + +clean: + rm -rf $(OBJS) + rm -rf $(BINS) + +check: + /bin/echo Running test tests/test + tests/test + /bin/echo Running test tests/assert + tests/assert + /bin/echo Running test tests/unsigned_add_check + tests/unsigned_add_check diff --git a/Makefile.unix b/Makefile.unix new file mode 100644 index 0000000..e57e8b6 --- /dev/null +++ b/Makefile.unix @@ -0,0 +1,29 @@ +CC=cc +CFLAGS=-Isrc -DCWARE_SAFETY_CHECKS +OBJS= +BINS=tests/test tests/assert tests/unsigned_add_check + +.SUFFIXES: + +all: $(OBJS) $(BINS) + +tests/test: tests/test.c src/liberror/public.h + $(CC) -o tests/test $(CFLAGS) $(LDFLAGS) $(OBJS) tests/test.c + +tests/assert: tests/assert.c src/liberror/public.h + $(CC) -o tests/assert $(CFLAGS) $(LDFLAGS) $(OBJS) tests/assert.c + +tests/unsigned_add_check: tests/unsigned_add_check.c src/liberror/public.h + $(CC) -o tests/unsigned_add_check $(CFLAGS) $(LDFLAGS) $(OBJS) tests/unsigned_add_check.c + +clean: + rm -rf $(OBJS) + rm -rf $(BINS) + +check: + /bin/echo Running test tests/test + tests/test + /bin/echo Running test tests/assert + tests/assert + /bin/echo Running test tests/unsigned_add_check + tests/unsigned_add_check diff --git a/Makefile.watcom b/Makefile.watcom new file mode 100644 index 0000000..3f51364 --- /dev/null +++ b/Makefile.watcom @@ -0,0 +1,34 @@ +CC=wcc386 +LD=wlink +CFLAGS=-i=src -dDCWARE_SAFETY_CHECKS +OBJS= +LINKOBJS= +BINS=tests\test.exe tests\assert.exe tests\unsigned_add_check.exe + +.SUFFIXES: + +all: $(OBJS) $(BINS) + +tests\test.exe: tests\test.c src\liberror\public.h + $(CC) -fo=tests\test.obj $(CFLAGS) tests\test.c + $(LD) $(LDFLAGS) $(LINKOBJS) FILE tests\test.obj NAME tests\test.exe + +tests\assert.exe: tests\assert.c src\liberror\public.h + $(CC) -fo=tests\assert.obj $(CFLAGS) tests\assert.c + $(LD) $(LDFLAGS) $(LINKOBJS) FILE tests\assert.obj NAME tests\assert.exe + +tests\unsigned_add_check.exe: tests\unsigned_add_check.c src\liberror\public.h + $(CC) -fo=tests\unsigned_add_check.obj $(CFLAGS) tests\unsigned_add_check.c + $(LD) $(LDFLAGS) $(LINKOBJS) FILE tests\unsigned_add_check.obj NAME tests\unsigned_add_check.exe + +clean: .SYMBOLIC + del $(OBJS) + del $(BINS) + +check: .SYMBOLIC + echo Running test tests\test + tests\test.exe + echo Running test tests\assert + tests\assert.exe + echo Running test tests\unsigned_add_check + tests\unsigned_add_check.exe diff --git a/src/liberror/public.h b/src/liberror/public.h index 71d4897..61927be 100755 --- a/src/liberror/public.h +++ b/src/liberror/public.h @@ -35,7 +35,8 @@ break; \ } \ \ - LIBERROR_ASSERT(1 == 0, type, message, function); + LIBERROR_ASSERT(1 == 0, type, message, function); \ + } \ } while(0) #else diff --git a/tests/unsigned_add_check.c b/tests/unsigned_add_check.c new file mode 100755 index 0000000..348287a --- /dev/null +++ b/tests/unsigned_add_check.c @@ -0,0 +1,13 @@ +#include +#include + +#include "liberror/public.h" + +int main() { + unsigned int x = 0; + unsigned int y = 9; + + LIBERROR_UNSIGNED_ADD_CHECK(x, y, "PRECONDITION", "Overflow!", "main"); + + return 0; +}