commit
6cf41c6408
7 changed files with 14 additions and 7 deletions
|
|
@ -48,6 +48,8 @@ env.MergeFlags("-std=gnu99 -Wall -Wextra -Werror -Wno-unused-parameter -Wno-attr
|
|||
|
||||
if env['PLATFORM'] == 'darwin':
|
||||
env.Append(SHLINKFLAGS = '-install_name ' + env["libpath"] + '/${TARGET.file}')
|
||||
elif os.uname()[0] == "OpenBSD":
|
||||
pass
|
||||
else:
|
||||
env.MergeFlags("-lrt")
|
||||
|
||||
|
|
|
|||
|
|
@ -13,8 +13,8 @@ static HParseResult* parse_action(void *env, HParseState *state) {
|
|||
HParseResult *tmp = h_do_parse(a->p, state);
|
||||
//HParsedToken *tok = a->action(h_do_parse(a->p, state));
|
||||
if(tmp) {
|
||||
const HParsedToken *tok = a->action(tmp, a->user_data);
|
||||
return make_result(state->arena, (HParsedToken*)tok);
|
||||
HParsedToken *tok = (HParsedToken*)a->action(tmp, a->user_data);
|
||||
return make_result(state->arena, tok);
|
||||
} else
|
||||
return NULL;
|
||||
} else // either the parser's missing or the action's missing
|
||||
|
|
|
|||
|
|
@ -25,5 +25,6 @@ HParser* h_and(const HParser* p) {
|
|||
}
|
||||
HParser* h_and__m(HAllocator* mm__, const HParser* p) {
|
||||
// zero-width postive lookahead
|
||||
return h_new_parser(mm__, &and_vt, (void *)p);
|
||||
void* env = (void*)p;
|
||||
return h_new_parser(mm__, &and_vt, env);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -55,5 +55,6 @@ HParser* h_ignore(const HParser* p) {
|
|||
return h_ignore__m(&system_allocator, p);
|
||||
}
|
||||
HParser* h_ignore__m(HAllocator* mm__, const HParser* p) {
|
||||
return h_new_parser(mm__, &ignore_vt, (void *)p);
|
||||
void* env = (void*)p;
|
||||
return h_new_parser(mm__, &ignore_vt, env);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,5 +21,6 @@ HParser* h_not(const HParser* p) {
|
|||
return h_not__m(&system_allocator, p);
|
||||
}
|
||||
HParser* h_not__m(HAllocator* mm__, const HParser* p) {
|
||||
return h_new_parser(mm__, ¬_vt, (void *)p);
|
||||
void* env = (void*)p;
|
||||
return h_new_parser(mm__, ¬_vt, env);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -92,6 +92,7 @@ HParser* h_optional(const HParser* p) {
|
|||
HParser* h_optional__m(HAllocator* mm__, const HParser* p) {
|
||||
// TODO: re-add this
|
||||
//assert_message(p->vtable != &ignore_vt, "Thou shalt ignore an option, rather than the other way 'round.");
|
||||
return h_new_parser(mm__, &optional_vt, (void *)p);
|
||||
void* env = (void*)p;
|
||||
return h_new_parser(mm__, &optional_vt, env);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -81,5 +81,6 @@ HParser* h_whitespace(const HParser* p) {
|
|||
return h_whitespace__m(&system_allocator, p);
|
||||
}
|
||||
HParser* h_whitespace__m(HAllocator* mm__, const HParser* p) {
|
||||
return h_new_parser(mm__, &whitespace_vt, (void *)p);
|
||||
void* env = (void*)p;
|
||||
return h_new_parser(mm__, &whitespace_vt, env);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue