summaryrefslogtreecommitdiff
path: root/support/regression/tests/assert.c
diff options
context:
space:
mode:
authorXavier ASUS <xavi92psx@gmail.com>2019-10-18 00:31:54 +0200
committerXavier ASUS <xavi92psx@gmail.com>2019-10-18 00:31:54 +0200
commit268a53de823a6750d6256ee1fb1e7707b4b45740 (patch)
tree42c1799a9a82b2f7d9790ee9fe181d72a7274751 /support/regression/tests/assert.c
downloadsdcc-gas-268a53de823a6750d6256ee1fb1e7707b4b45740.tar.gz
sdcc-3.9.0 fork implementing GNU assembler syntax
This fork aims to provide better support for stm8-binutils
Diffstat (limited to 'support/regression/tests/assert.c')
-rw-r--r--support/regression/tests/assert.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/support/regression/tests/assert.c b/support/regression/tests/assert.c
new file mode 100644
index 0000000..de57c7c
--- /dev/null
+++ b/support/regression/tests/assert.c
@@ -0,0 +1,36 @@
+/* assert.c
+ */
+
+#include <testfwk.h>
+
+#define NDEBUG
+
+#include <assert.h>
+
+volatile int i = 42;
+
+void testStaticAssert (void)
+{
+/* sdcc always supports C11 _Static_assert, even though the earliest standard requiring it is C11. */
+#if defined (__SDCC) || __STDC_VERSION__ >= 201112L
+ _Static_assert (1, "First assertion");
+ _Static_assert (sizeof(int), "Second assertion");
+#endif
+}
+
+#pragma std_c2x
+
+void testStaticAssert2X (void)
+{
+#if defined (__SDCC)
+ _Static_assert (1);
+ _Static_assert (sizeof(int));
+#endif
+}
+
+void testAssert (void)
+{
+ assert (i);
+ assert (i - 42);
+}
+