From b4261ac4a79651bd8fd1bd03d38bbf49ee89b615 Mon Sep 17 00:00:00 2001 From: kartofen Date: Sun, 6 Jul 2025 21:18:28 +0300 Subject: modular table building --- parts/symbol.h | 7 ++++--- parts/table.h | 5 +++-- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'parts') diff --git a/parts/symbol.h b/parts/symbol.h index 2e9c30c..dea457e 100644 --- a/parts/symbol.h +++ b/parts/symbol.h @@ -10,8 +10,9 @@ extern int (*symbol_is_input_end)(symbol s); extern int (*symbol_is_valid)(symbol s); // helper macro -#define IMPLEMENT_FUNCPTR(type, name, args, ...) \ - type __##name args __VA_ARGS__ \ - type (*name) args = __##name; +#define IMPLEMENT_FUNCPTR(type, name, args) \ + type __##name args; \ + type (*name) args = __##name; \ + type __##name args #endif diff --git a/parts/table.h b/parts/table.h index 44d1e12..486466f 100644 --- a/parts/table.h +++ b/parts/table.h @@ -12,8 +12,9 @@ extern struct action { extern size_t table_states; -/*extern*/ int table_fill(); -/*extern*/ void table_free(); +extern int (*table_fill)(); +extern void (*table_free)(); + void table_print(); void table_print_cstyle(); -- cgit v1.2.3