Skip to content
Snippets Groups Projects
Commit cc4ded89 authored by TQ Hirsch's avatar TQ Hirsch
Browse files

Ported to OpenBSD.

parent 2c405f40
No related branches found
No related tags found
No related merge requests found
......@@ -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__, &not_vt, (void *)p);
void* env = (void*)p;
return h_new_parser(mm__, &not_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);
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment