Ported to OpenBSD.

This commit is contained in:
TQ Hirsch 2014-04-13 22:29:49 +00:00
parent 2c405f40a9
commit cc4ded8914
7 changed files with 14 additions and 7 deletions

View file

@ -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")

View file

@ -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

View file

@ -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);
}

View file

@ -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);
}

View file

@ -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__, &not_vt, (void *)p);
void* env = (void*)p;
return h_new_parser(mm__, &not_vt, env);
}

View file

@ -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);
}

View file

@ -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);
}