From: 0xllx0 <[email protected]>
Converts an assert into an early return during AST parsing.
Resolves: Rust-GCC/gccrs#4145
gcc/rust/ChangeLog:
* ast/rust-ast.cc (Module::process_file_path): empty module early return
Signed-off-by: Elle Rhumsaa <[email protected]>
---
gcc/rust/ast/rust-ast.cc | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/gcc/rust/ast/rust-ast.cc b/gcc/rust/ast/rust-ast.cc
index a4b256c9e67..4e81de85be4 100644
--- a/gcc/rust/ast/rust-ast.cc
+++ b/gcc/rust/ast/rust-ast.cc
@@ -3363,7 +3363,13 @@ void
Module::process_file_path ()
{
rust_assert (kind == Module::ModuleKind::UNLOADED);
- rust_assert (module_file.empty ());
+
+ if (!module_file.empty ())
+ {
+ rust_error_at (locus, "error handling module file for %qs",
+ module_name.as_string ().c_str ());
+ return;
+ }
// This corresponds to the path of the file 'including' the module. So the
// file that contains the 'mod <file>;' directive
--
2.50.1