aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/global_variables.c
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2026-01-10 11:03:51 +0900
committernsfisis <nsfisis@gmail.com>2026-01-10 11:32:14 +0900
commit175b00181b627bec69f645d6d8fc880a2bdd3f81 (patch)
treee6a3d6505c02c6137ddffb4899b41b6dc9cd6867 /tests/global_variables.c
parent8f0fa8d70ce08ee0347a5880d44faab8307b72f6 (diff)
downloadducc-175b00181b627bec69f645d6d8fc880a2bdd3f81.tar.gz
ducc-175b00181b627bec69f645d6d8fc880a2bdd3f81.tar.zst
ducc-175b00181b627bec69f645d6d8fc880a2bdd3f81.zip
feat: support global variables of char[]
Diffstat (limited to 'tests/global_variables.c')
-rw-r--r--tests/global_variables.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/global_variables.c b/tests/global_variables.c
new file mode 100644
index 0000000..20e0a64
--- /dev/null
+++ b/tests/global_variables.c
@@ -0,0 +1,36 @@
+#include <helpers.h>
+
+int printf(const char*, ...);
+int strcmp(const char*, const char*);
+
+int a;
+int* b = &a;
+int c[10];
+int* d = c;
+int e, *f = e, g[10], *h = g;
+
+char i = 42;
+short j = 123;
+int k = 999;
+
+char l[6] = "hello";
+
+int main() {
+ *b = 123;
+ ASSERT_EQ(123, a);
+
+ d[2] = 42;
+ ASSERT_EQ(42, c[2]);
+
+ *f = 456;
+ ASSERT_EQ(456, e);
+
+ h[5] = 789;
+ ASSERT_EQ(789, g[5]);
+
+ ASSERT_EQ(42, i);
+ ASSERT_EQ(123, j);
+ ASSERT_EQ(999, k);
+
+ ASSERT_EQ(0, strcmp("hello", l));
+}