diff --git a/src/backends/lr.c b/src/backends/lr.c index f2ac4956d80358e51d35c0e70484013bbfde212a..6919bf6d0a8d284c95167adb07023914a49f89b4 100644 --- a/src/backends/lr.c +++ b/src/backends/lr.c @@ -420,6 +420,12 @@ void h_lr_parse_start(HSuspendedParser *s) s->backend_state = engine; } +// cf. comment before run_trace in regex.c +#if defined(__GNUC__) && !defined(__clang__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunknown-pragmas" +#pragma GCC diagnostic ignored "-Wclobbered" +#endif bool h_lr_parse_chunk(HSuspendedParser* s, HInputStream *stream) { HLREngine *engine = s->backend_state; @@ -457,6 +463,10 @@ bool h_lr_parse_chunk(HSuspendedParser* s, HInputStream *stream) *stream = engine->input; return !run; // done if engine no longer running } +// Reenable -Wclobber +#if defined(__GNUC__) && !defined(__clang__) +#pragma GCC diagnostic pop +#endif HParseResult *h_lr_parse_finish(HSuspendedParser *s) {