* support/regression/generate-cases.py: implemented more flexible rule
for detection of testing functions, allowing white-spaces surrounding
the function name and the 'void' parameter.
+ * support/regression/tests/constantRange.c,
+ support/regression/tests/scott-compare3.c: fixed failing regression
+ tests, uncovered by implementation of more flexible rule for detection
+ of testing functions
2007-06-04 Maarten Brock <sourceforge.brock AT dse.nl>
ASSERT (! (UINT16_MAX + 1L == u16));
ASSERT ( ( 0 - 1 != u16));
ASSERT ( (UINT16_MAX + 1L != u16));
- ASSERT ( ( 0 - 1 < u16));
ASSERT (! (UINT16_MAX < u16));
ASSERT ( ( 0 <= u16));
ASSERT (! (UINT16_MAX + 1L <= u16));
ASSERT (! ( 0 > u16));
ASSERT ( (UINT16_MAX + 1L > u16));
- ASSERT (! ( 0 - 1 >= u16));
ASSERT ( (UINT16_MAX >= u16));
+#if defined(PORT_HOST)
+/* on 32bit host: -1 is presented as 32 bit int, 16 bit unsigned short is promoted to 32 bit int */
+ ASSERT ( ( 0 - 1 < u16)); /* -1 > 0 */
+ ASSERT (! ( 0 - 1 >= u16)); /* !(-1 <= 0) */
+#else
+/* on 16bit sdcc: int (-1) is promoted to unsigned int (0xffff) */
+ ASSERT ( ( 0 - 1 > u16)); /* 0xffff > 0 */
+ ASSERT (! ( 0 - 1 <= u16)); /* !(0xffff <= 0) */
+#endif
+
/* sdcc can't hold a number (INT32_MIN - 1) or (INT32_MAX + 1),
there's no 'double' or 'long long' */
/* ASSERT (! (INT32_MIN - 1 == s32)); */
/* ASSERT (! (UINT32_MAX + 1 == u32)); */
ASSERT ( ( 0 - 1 != u32));
/* ASSERT ( (UINT32_MAX + 1 != u32)); */
- ASSERT ( ( 0 - 1 < u32));
+ ASSERT ( ( 0 - 1 > u32)); /* 0xffffffff > 0 */
ASSERT (! (UINT32_MAX < u32));
ASSERT ( ( 0 <= u32));
/* ASSERT (! (UINT32_MAX + 1 <= u32)); */
ASSERT (! ( 0 > u32));
/* ASSERT ( (UINT32_MAX + 1 > u32)); */
- ASSERT (! ( 0 - 1 >= u32));
+ ASSERT (! ( 0 - 1 <= u32)); /* !(0xffffffff <= 0) */
ASSERT ( (UINT32_MAX >= u32));
}