diff options
Diffstat (limited to 'src/mds-kbdc/tree.h')
-rw-r--r-- | src/mds-kbdc/tree.h | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/src/mds-kbdc/tree.h b/src/mds-kbdc/tree.h index 8354744..6fd5bca 100644 --- a/src/mds-kbdc/tree.h +++ b/src/mds-kbdc/tree.h @@ -500,6 +500,11 @@ typedef struct mds_kbdc_tree_map */ mds_kbdc_tree_t* result; + /* + * These are ordered so that `mds_kbdc_tree_t.macro_call.arguments` + * and `mds_kbdc_tree_t.map.sequence` have the same address. + */ + MDS_KBDC_TREE_PADDING(2); } mds_kbdc_tree_map_t; @@ -598,17 +603,22 @@ typedef struct mds_kbdc_tree_macro_call MDS_KBDC_TREE_COMMON; /** - * The name of the macro - */ - char* name; - - /** * The first input argument for the * macro call, the second is accessed * using `.arguments.next` */ mds_kbdc_tree_t* arguments; + /** + * The name of the macro + */ + char* name; + + /* + * These are ordered so that `mds_kbdc_tree_t.macro_call.arguments` + * and `mds_kbdc_tree_t.map.sequence` have the same address. + */ + MDS_KBDC_TREE_PADDING(2); } mds_kbdc_tree_macro_call_t; |