From cc5e19eab66114ed87d1704662ebf0d419e7b2e3 Mon Sep 17 00:00:00 2001 From: ctw-ian Date: Sat, 6 Aug 2022 22:43:00 +0800 Subject: [PATCH] Fix incorrect context status saving and recovering Issue:I5L2UG Signed-off-by: ctw-ian Change-Id: I71effbd1538c626c771274c9ff0dca9149db4da6 --- es2panda/parser/parserImpl.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/es2panda/parser/parserImpl.h b/es2panda/parser/parserImpl.h index c07300b81b..7eb03e4270 100644 --- a/es2panda/parser/parserImpl.h +++ b/es2panda/parser/parserImpl.h @@ -504,7 +504,7 @@ class SavedStatusContext { public: explicit SavedStatusContext(ParserContext *ctx) // NOLINTNEXTLINE(readability-magic-numbers) - : ctx_(ctx), savedStatus_(static_cast(ctx->Status() & status)) + : ctx_(ctx), savedStatus_(static_cast(ctx->Status())) { // NOLINTNEXTLINE(readability-magic-numbers) ctx->Status() |= status; @@ -515,9 +515,7 @@ public: ~SavedStatusContext() { - if (savedStatus_ == ParserStatus::NO_OPTS) { - ctx_->Status() &= ~savedStatus_; - } + ctx_->Status() = savedStatus_; } private: -- Gitee