aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2025-07-29 06:53:39 +0900
committernsfisis <nsfisis@gmail.com>2025-08-15 10:04:35 +0900
commit139f8bb2da0ca1d4f4be937730d60a9faa5e542f (patch)
treef411c046a34449458c34acef0daeeb060f04b9f6 /include
parentf91a10ae153f41c46729605ecf0023d11ada07b8 (diff)
downloadducc-139f8bb2da0ca1d4f4be937730d60a9faa5e542f.tar.gz
ducc-139f8bb2da0ca1d4f4be937730d60a9faa5e542f.tar.zst
ducc-139f8bb2da0ca1d4f4be937730d60a9faa5e542f.zip
feat: implement #include <systemheader>
Diffstat (limited to 'include')
-rw-r--r--include/stdarg.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/stdarg.h b/include/stdarg.h
new file mode 100644
index 0000000..43138b6
--- /dev/null
+++ b/include/stdarg.h
@@ -0,0 +1,20 @@
+// System V Application Binary Interface
+// AMD64 Architecture Processor Supplement
+// (With LP64 and ILP32 Programming Models)
+// Version 1.0
+// Figure 3.34: va_list Type Declaration
+struct __va_list__ {
+ // unsigned int gp_offset;
+ // unsigned int fp_offset;
+ int gp_offset;
+ int fp_offset;
+ void* overflow_arg_area;
+ void* reg_save_area;
+};
+// ducc currently does not support array type.
+// typedef struct __va_list__ va_list[1];
+typedef struct __va_list__* va_list;
+
+// va_start() is currently implemented as a special form due to the limitation of #define macro.
+void va_end(va_list args) {
+}