From 65ee3593bd14540513a366796b32462fba79beba Mon Sep 17 00:00:00 2001 From: "Sven M. Hallberg" <pesco@khjk.org> Date: Wed, 8 May 2013 18:01:55 +0200 Subject: [PATCH] compile function can't take a const parser --- src/backends/packrat.c | 2 +- src/benchmark.c | 4 ++-- src/compile.c | 4 ++-- src/hammer.h | 4 ++-- src/internal.h | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/backends/packrat.c b/src/backends/packrat.c index d05129d7..1f8d1135 100644 --- a/src/backends/packrat.c +++ b/src/backends/packrat.c @@ -190,7 +190,7 @@ HParseResult* h_do_parse(const HParser* parser, HParseState *state) { } } -int h_packrat_compile(HAllocator* mm__, const HParser* parser, const void* params) { +int h_packrat_compile(HAllocator* mm__, HParser* parser, const void* params) { return 0; // No compilation necessary, and everything should work // out of the box. } diff --git a/src/benchmark.c b/src/benchmark.c index 41d9164f..8bfddefa 100644 --- a/src/benchmark.c +++ b/src/benchmark.c @@ -21,11 +21,11 @@ */ -HBenchmarkResults *h_benchmark(const HParser* parser, HParserTestcase* testcases) { +HBenchmarkResults *h_benchmark(HParser* parser, HParserTestcase* testcases) { return h_benchmark__m(&system_allocator, parser, testcases); } -HBenchmarkResults *h_benchmark__m(HAllocator* mm__, const HParser* parser, HParserTestcase* testcases) { +HBenchmarkResults *h_benchmark__m(HAllocator* mm__, HParser* parser, HParserTestcase* testcases) { // For now, just output the results to stderr HParserTestcase* tc = testcases; HParserBackend backend = PB_MIN; diff --git a/src/compile.c b/src/compile.c index 8f2286a3..4673b641 100644 --- a/src/compile.c +++ b/src/compile.c @@ -7,10 +7,10 @@ static HParserBackendVTable *backends[PB_MAX] = { &h__ll_backend_vtable, }; -int h_compile(const HParser* parser, HParserBackend backend, const void* params) { +int h_compile(HParser* parser, HParserBackend backend, const void* params) { return h_compile__m(&system_allocator, parser, backend, params); } -int h_compile__m(HAllocator* mm__, const HParser* parser, HParserBackend backend, const void* params) { +int h_compile__m(HAllocator* mm__, HParser* parser, HParserBackend backend, const void* params) { return backends[backend]->compile(mm__, parser, params); } diff --git a/src/hammer.h b/src/hammer.h index e75a41fd..0138c98a 100644 --- a/src/hammer.h +++ b/src/hammer.h @@ -565,7 +565,7 @@ HAMMER_FN_DECL(void, h_pprint, FILE* stream, const HParsedToken* tok, int indent * * Returns -1 if grammar cannot be compiled with the specified options; 0 otherwise. */ -HAMMER_FN_DECL(int, h_compile, const HParser* parser, HParserBackend backend, const void* params); +HAMMER_FN_DECL(int, h_compile, HParser* parser, HParserBackend backend, const void* params); /** * TODO: Document me @@ -590,7 +590,7 @@ const uint8_t* h_bit_writer_get_buffer(HBitWriter* w, size_t *len); void h_bit_writer_free(HBitWriter* w); // {{{ Benchmark functions -HAMMER_FN_DECL(HBenchmarkResults *, h_benchmark, const HParser* parser, HParserTestcase* testcases); +HAMMER_FN_DECL(HBenchmarkResults *, h_benchmark, HParser* parser, HParserTestcase* testcases); void h_benchmark_report(FILE* stream, HBenchmarkResults* results); void h_benchmark_dump_optimized_code(FILE* stream, HBenchmarkResults* results); // }}} diff --git a/src/internal.h b/src/internal.h index 4c30eb53..341f1cdc 100644 --- a/src/internal.h +++ b/src/internal.h @@ -130,7 +130,7 @@ struct HParseState_ { }; typedef struct HParserBackendVTable_ { - int (*compile)(HAllocator *mm__, const HParser* parser, const void* params); + int (*compile)(HAllocator *mm__, HParser* parser, const void* params); HParseResult* (*parse)(HAllocator *mm__, const HParser* parser, HParseState* parse_state); } HParserBackendVTable; -- GitLab