aboutsummaryrefslogtreecommitdiff
path: root/all.h
diff options
context:
space:
mode:
authorQuentin Carbonneaux <[email protected]>2016-08-15 22:59:52 -0700
committerQuentin Carbonneaux <[email protected]>2016-08-16 12:54:24 -0700
commitfbbb8e4d78e8b2e9410699fd27af282cc6ddfc4b (patch)
treeff19ad7b7d03c8ed953e253106fd603dfdf65a76 /all.h
parent3f8af2ba7b8f79bd577ca4f2fef5fb922494042d (diff)
parse union types
Diffstat (limited to 'all.h')
-rw-r--r--all.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/all.h b/all.h
index 08056c4..b6392e5 100644
--- a/all.h
+++ b/all.h
@@ -25,6 +25,7 @@ typedef struct Con Con;
typedef struct Addr Mem;
typedef struct Fn Fn;
typedef struct Typ Typ;
+typedef struct Seg Seg;
typedef struct Dat Dat;
enum Reg {
@@ -422,8 +423,9 @@ struct Fn {
struct Typ {
char name[NString];
int dark;
- ulong size;
int align;
+ size_t size;
+ int nunion;
struct Seg {
enum {
@@ -433,8 +435,8 @@ struct Typ {
Styp,
};
uint type:2;
- uint len:30;
- } seg[NSeg+1];
+ uint len:30; /* index in typ[] for Styp */
+ } (*seg)[NSeg+1];
};
struct Dat {