[gcc r16-5603] gccrs: stop an infinite loop at END_OF_FILE
Arthur Cohen
cohenarthur@gcc.gnu.org
Tue Nov 25 21:59:23 GMT 2025
https://gcc.gnu.org/g:910bae566ebff5142688971792d13dc5d7274b88
commit r16-5603-g910bae566ebff5142688971792d13dc5d7274b88
Author: Lúcio Boari Fleury <lucboari@gmail.com>
Date: Fri Nov 21 22:04:25 2025 -0300
gccrs: stop an infinite loop at END_OF_FILE
gcc/rust/ChangeLog:
* parse/rust-parse-impl.h: Add early exit condition to parsing loop.
Signed-off-by: Lúcio Boari Fleury <lucboari@gmail.com>
Diff:
---
gcc/rust/parse/rust-parse-impl.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/gcc/rust/parse/rust-parse-impl.h b/gcc/rust/parse/rust-parse-impl.h
index 0421d6cb80e5..afc701230951 100644
--- a/gcc/rust/parse/rust-parse-impl.h
+++ b/gcc/rust/parse/rust-parse-impl.h
@@ -1861,7 +1861,8 @@ Parser<ManagedTokenSource>::parse_macro_invocation_semi (
t = lexer.peek_token ();
// parse token trees until the initial delimiter token is found again
- while (!token_id_matches_delims (t->get_id (), delim_type))
+ while (!token_id_matches_delims (t->get_id (), delim_type)
+ && t->get_id () != END_OF_FILE)
{
std::unique_ptr<AST::TokenTree> tree = parse_token_tree ();
More information about the Gcc-cvs
mailing list