From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1643) id 69294381ECBE; Wed, 8 Jun 2022 12:40:30 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 69294381ECBE Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Thomas Schwinge To: gcc-cvs@gcc.gnu.org Subject: [gcc/devel/rust/master] Add an assertion to avoid peeking when the stack is empty X-Act-Checkin: gcc X-Git-Author: Philip Herron X-Git-Refname: refs/heads/devel/rust/master X-Git-Oldrev: 1ada076b9324982fd6f49aea6456e99613e394a8 X-Git-Newrev: 7fe6bc1ba1a8d296262e1e06ac067190c8ab3ebb Message-Id: <20220608124030.69294381ECBE@sourceware.org> Date: Wed, 8 Jun 2022 12:40:30 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 08 Jun 2022 12:40:30 -0000 https://gcc.gnu.org/g:7fe6bc1ba1a8d296262e1e06ac067190c8ab3ebb commit 7fe6bc1ba1a8d296262e1e06ac067190c8ab3ebb Author: Philip Herron Date: Thu Apr 28 14:42:15 2022 +0100 Add an assertion to avoid peeking when the stack is empty Diff: --- gcc/rust/backend/rust-compile-context.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gcc/rust/backend/rust-compile-context.h b/gcc/rust/backend/rust-compile-context.h index de9d03f6d9d..d17034b51df 100644 --- a/gcc/rust/backend/rust-compile-context.h +++ b/gcc/rust/backend/rust-compile-context.h @@ -254,7 +254,11 @@ public: bool in_fn () { return fn_stack.size () != 0; } // Note: it is undefined behavior to call peek_fn () if fn_stack is empty. - fncontext peek_fn () { return fn_stack.back (); } + fncontext peek_fn () + { + rust_assert (!fn_stack.empty ()); + return fn_stack.back (); + } void push_type (tree t) { type_decls.push_back (t); } void push_var (::Bvariable *v) { var_decls.push_back (v); }