Module Name:    src
Committed By:   joerg
Date:           Thu Feb 27 17:25:28 UTC 2014

Modified Files:
        src/tests/lib/libc/stdlib: t_abs.c

Log Message:
Don't use integer downcasts, use correctly sized constants for each test.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/tests/lib/libc/stdlib/t_abs.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/lib/libc/stdlib/t_abs.c
diff -u src/tests/lib/libc/stdlib/t_abs.c:1.1 src/tests/lib/libc/stdlib/t_abs.c:1.2
--- src/tests/lib/libc/stdlib/t_abs.c:1.1	Thu Mar 29 06:16:56 2012
+++ src/tests/lib/libc/stdlib/t_abs.c	Thu Feb 27 17:25:28 2014
@@ -1,4 +1,4 @@
-/* $NetBSD: t_abs.c,v 1.1 2012/03/29 06:16:56 jruoho Exp $ */
+/* $NetBSD: t_abs.c,v 1.2 2014/02/27 17:25:28 joerg Exp $ */
 
 /*-
  * Copyright (c) 2012 The NetBSD Foundation, Inc.
@@ -29,18 +29,13 @@
  * POSSIBILITY OF SUCH DAMAGE.
  */
 #include <sys/cdefs.h>
-__RCSID("$NetBSD: t_abs.c,v 1.1 2012/03/29 06:16:56 jruoho Exp $");
+__RCSID("$NetBSD: t_abs.c,v 1.2 2014/02/27 17:25:28 joerg Exp $");
 
 #include <atf-c.h>
 #include <inttypes.h>
 #include <limits.h>
 #include <stdlib.h>
 
-struct test {
-	int64_t val;
-	int64_t res;
-};
-
 ATF_TC(abs_basic);
 ATF_TC_HEAD(abs_basic, tc)
 {
@@ -49,7 +44,10 @@ ATF_TC_HEAD(abs_basic, tc)
 
 ATF_TC_BODY(abs_basic, tc)
 {
-	static const struct test table[] = {
+	static const struct {
+		int val;
+		int res;
+	} table[] = {
 		{ 0,		0		},
 		{ +0,		0		},
 		{ -0,		0		},
@@ -59,7 +57,7 @@ ATF_TC_BODY(abs_basic, tc)
 	};
 
 	for (size_t i = 0; i < __arraycount(table); i++)
-		ATF_CHECK(abs(table[i].val) == (int)table[i].res);
+		ATF_CHECK(abs(table[i].val) == table[i].res);
 }
 
 ATF_TC(imaxabs_basic);
@@ -70,14 +68,23 @@ ATF_TC_HEAD(imaxabs_basic, tc)
 
 ATF_TC_BODY(imaxabs_basic, tc)
 {
-	static const struct test table[] = {
+	static const struct {
+		intmax_t val;
+		intmax_t res;
+	} table[] = {
 		{ 0,		0		},
 		{ INT_MAX,	INT_MAX		},
 		{ -INT_MAX,	INT_MAX		},
+		{ LONG_MAX,	LONG_MAX	},
+		{ -LONG_MAX,	LONG_MAX	},
+		{ LLONG_MAX,	LLONG_MAX	},
+		{ -LLONG_MAX,	LLONG_MAX	},
+		{ INT_MAX,	INT_MAX		},
+		{ -INT_MAX,	INT_MAX		},
 	};
 
 	for (size_t i = 0; i < __arraycount(table); i++)
-		ATF_CHECK(imaxabs(table[i].val) == (intmax_t)table[i].res);
+		ATF_CHECK(imaxabs(table[i].val) == table[i].res);
 }
 
 ATF_TC(labs_basic);
@@ -88,18 +95,22 @@ ATF_TC_HEAD(labs_basic, tc)
 
 ATF_TC_BODY(labs_basic, tc)
 {
-	static const struct test table[] = {
+	static const struct {
+		long val;
+		long res;
+	} table[] = {
 		{ 0,		0		},
 		{ +0,		0		},
 		{ -0,		0		},
 		{ -1,		1		},
 		{ LONG_MAX,	LONG_MAX	},
 		{ -LONG_MAX,	LONG_MAX	},
-		{ -0x100000000,	0x100000000	},
+		{ INT_MAX,	INT_MAX		},
+		{ -INT_MAX,	-INT_MAX	},
 	};
 
 	for (size_t i = 0; i < __arraycount(table); i++)
-		ATF_CHECK(labs(table[i].val) == (long int)table[i].res);
+		ATF_CHECK(labs(table[i].val) == table[i].res);
 }
 
 ATF_TC(llabs_basic);
@@ -110,18 +121,25 @@ ATF_TC_HEAD(llabs_basic, tc)
 
 ATF_TC_BODY(llabs_basic, tc)
 {
-	static const struct test table[] = {
+	static const struct {
+		long long val;
+		long long res;
+	} table[] = {
 		{ 0,		0		},
 		{ +0,		0		},
 		{ -0,		0		},
 		{ -1,		1		},
+		{ INT_MAX,	INT_MAX		},
+		{ -INT_MAX,	INT_MAX		},
+		{ LONG_MAX,	LONG_MAX	},
+		{ -LONG_MAX,	LONG_MAX	},
 		{ LLONG_MAX,	LLONG_MAX	},
 		{ -LLONG_MAX,	LLONG_MAX	},
-		{ -0x100000000,	0x100000000	},
+		{ -0x100000000LL,	0x100000000LL	},
 	};
 
 	for (size_t i = 0; i < __arraycount(table); i++)
-		ATF_CHECK(llabs(table[i].val) == (long long int)table[i].res);
+		ATF_CHECK(llabs(table[i].val) == table[i].res);
 }
 
 ATF_TP_ADD_TCS(tp)

Reply via email to