From 05fe1bb311ac82279ed19270b3a834f623de3004 Mon Sep 17 00:00:00 2001 From: Jordan Date: Wed, 11 Jan 2017 14:56:36 -0800 Subject: [PATCH] fixes --- src/ir.c | 27 ++++++++++++--------------- src/parser.y | 7 ++++--- 2 files changed, 16 insertions(+), 18 deletions(-) diff --git a/src/ir.c b/src/ir.c index 3f22400..4255f22 100644 --- a/src/ir.c +++ b/src/ir.c @@ -25,8 +25,6 @@ int ir_condenser(void); /* Private */ extern //apc.c long sys_pagesize; -static - static inline struct ir_framebox_t* ir_set_add_framebox(struct ir_set_t*, uint8_t*); static @@ -36,6 +34,7 @@ int bytes_identical(uint8_t*,uint8_t*); static void* stack_alloc(size_t); /* Memory allocator */ +struct pagenode_t; struct pagenode_t { struct pagenode_t* next; char* head; @@ -60,20 +59,19 @@ struct ir_frameinfo_t struct ir_framedata_t { struct ir_setdata_header_t header; struct ir_frameinfo_t frameinfo; -}** framedatas; +}; struct ir_framebox_t { struct ir_setdata_header_t header; struct ir_framedata_t framesheets[FACING_MAX]; struct ir_framedata_t mapsheets[FACING_MAX]; -}** frameboxes; +}; struct ir_simplex_t -{ struct ir_setdat_header_t header; -}** simplexes; +{ struct ir_setdata_header_t header; }; struct ir_link_t -{ struct ir_setdat_header_t header; - struct ir_set_t* src, * trg; - enum ltype type; -}** links; +{ struct ir_setdata_header_t header; + struct ir_set_t* src, * trg; + enum ltype type; +}; union ir_setdata_t { struct ir_setdata_header_t header; struct ir_framebox_t framebox; @@ -86,7 +84,7 @@ struct ir_class_t { struct ir_class_t* nextchild, * nextsib; struct ir_set_t* root_set; uint8_t* name; -}** classes; +}; struct ir_set_t { struct ir_set_t* nextchild, * nextsib; struct ir_class_t* class; @@ -95,7 +93,7 @@ struct ir_set_t struct framebox_t* frameboxes; struct simplex_t* audio; struct link_t* links; -}** sets; +}; /* Function-Like Macros */ #define do_warn() do { \ } while (0) @@ -120,14 +118,13 @@ struct ir_set_t } while (0) #define struct_alloc(_T) ((struct _T*) stack_alloc(sizeof(struct _T))) - static -struct ir_class_t root_class = { .name = "." }; +struct ir_class_t root_class = { .name = (uint8_t*)"." }; /* Init */ int ir_init ( void ) -{ pagenode_root = calloc(struct pagenode_t*) calloc(PN_ALLOCSIZE); +{ pagenode_root = (struct pagenode_t*) calloc(PN_ALLOCSIZE); if (pagenode_root == NULL) return -1; pagenode_root->head = pagenode_root->root; diff --git a/src/parser.y b/src/parser.y index 41c4095..959890d 100644 --- a/src/parser.y +++ b/src/parser.y @@ -3,8 +3,9 @@ %code requires { #include #include "ir.h" + #include "apc.h" typedef struct class_state_t yycstate; - struct frame_spec_t { ir_facing d; int w, h; }; + struct frame_spec_t { apc_facing d; int w, h; }; } %code provides { yycstate* yycstate_new(void); @@ -16,7 +17,7 @@ #include #include #include "ir.h" - + struct class_state_t { ir_class *csp; ir_class class_stack[]; @@ -39,7 +40,7 @@ %union { long long ref; int val; - ir_facing face; + apc_facing face; uint8_t* str; ir_class class; ir_set set; -- 2.18.0