summaryrefslogtreecommitdiff
path: root/conf/conf.h
diff options
context:
space:
mode:
authorMaria Matejka <mq@ucw.cz>2023-06-09 12:49:19 +0200
committerOndrej Zajicek <santiago@crfreenet.org>2023-09-12 15:21:14 +0200
commit58efa94460381309c754a3162df257ae043c2cbd (patch)
tree2826fefafac9ca9a114f485d620c5f80246d415e /conf/conf.h
parent8e177cf35b582ec973c1abce4709c80847adb711 (diff)
Conf: Keywords have their default symbols
This avoids unnecessary collapsed soft scopes caused by keyword symbol multiallocation.
Diffstat (limited to 'conf/conf.h')
-rw-r--r--conf/conf.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/conf/conf.h b/conf/conf.h
index fe8ee5bf..12f1a6b3 100644
--- a/conf/conf.h
+++ b/conf/conf.h
@@ -123,6 +123,7 @@ struct symbol {
struct f_dynamic_attr *attribute; /* For SYM_ATTRIBUTE */
struct f_val *val; /* For SYM_CONSTANT */
uint offset; /* For SYM_VARIABLE */
+ const struct keyword *keyword; /* For SYM_KEYWORD */
};
char name[0];
@@ -157,6 +158,7 @@ struct bytestring {
#define SYM_FILTER 4
#define SYM_TABLE 5
#define SYM_ATTRIBUTE 6
+#define SYM_KEYWORD 7
#define SYM_VARIABLE 0x100 /* 0x100-0x1ff are variable types */
#define SYM_VARIABLE_RANGE SYM_VARIABLE ... (SYM_VARIABLE | 0xff)