-
Notifications
You must be signed in to change notification settings - Fork 192
Closed
Labels
Description
auto-reduced (treereduce-rust):
//@compile-flags: -frust-incomplete-and-experimental-compiler-do-not-use
struct S {
field: [u8; {
#[path = "outer/inner.rs"]
mod inner;
// OK
0
}],
}original:
//@ proc-macro: issue-118809.rs
#[macro_use]
extern crate issue_118809;
#[derive(Empty)]
struct S {
field: [u8; {
#[path = "outer/inner.rs"]
mod inner; //~ ERROR non-inline modules in proc macro input are unstable
mod inner_inline {} // OK
0
}]
}
fn main() {}Version information:
Possibly related line of code:
gccrs/gcc/rust/ast/rust-ast.cc
Lines 3380 to 3392 in c742973
| } | |
| void | |
| Module::process_file_path () | |
| { | |
| rust_assert (kind == Module::ModuleKind::UNLOADED); | |
| rust_assert (module_file.empty ()); | |
| // This corresponds to the path of the file 'including' the module. So the | |
| // file that contains the 'mod <file>;' directive | |
| std::string including_fpath (outer_filename); | |
| std::string expected_file_path = module_name.as_string () + ".rs"; |
Command:
/home/matthias/vcs/github/gccrs/gccrs-build/gcc/crab1 -frust-incomplete-and-experimental-compiler-do-not-use
Program output
/tmp/icemaker_global_tempdir.4jbydGKfmYZn/rustc_testrunner_tmpdir_reporting.jMr7LWNZjpn8/mvce.rs:4:9: error: cannot open module file ./outer/inner.rs: No such file or directory
4 | mod inner;
| ^~~
crab1: internal compiler error: in process_file_path, at rust/ast/rust-ast.cc:3386
0x300c7d8 internal_error(char const*, ...)
../../gcc/diagnostic-global-context.cc:534
0xc23693 fancy_abort(char const*, int, char const*)
../../gcc/diagnostics/context.cc:1640
0x9048e5 Rust::AST::Module::process_file_path()
../../gcc/rust/ast/rust-ast.cc:3386
0xdea490 Rust::AST::Module::load_items()
../../gcc/rust/ast/rust-ast.cc:3472
0xeaf627 Rust::CfgStrip::visit(Rust::AST::Module&)
../../gcc/rust/expand/rust-cfg-strip.cc:1777
0xeaf627 Rust::CfgStrip::visit(Rust::AST::Module&)
../../gcc/rust/expand/rust-cfg-strip.cc:1765
0xe4513f void Rust::AST::DefaultASTVisitor::visit<Rust::AST::Stmt>(std::unique_ptr<Rust::AST::Stmt, std::default_delete<Rust::AST::Stmt> >&)
../../gcc/rust/ast/rust-ast-visitor.h:422
0xe4513f Rust::AST::DefaultASTVisitor::visit(Rust::AST::BlockExpr&)
../../gcc/rust/ast/rust-ast-visitor.cc:458
0xeb1824 Rust::CfgStrip::visit(Rust::AST::BlockExpr&)
../../gcc/rust/expand/rust-cfg-strip.cc:1166
0xeb1824 Rust::CfgStrip::visit(Rust::AST::BlockExpr&)
../../gcc/rust/expand/rust-cfg-strip.cc:1145
0xeb511d Rust::CfgStrip::visit(Rust::AST::ArrayType&)
../../gcc/rust/expand/rust-cfg-strip.cc:2662
0xe48925 void Rust::AST::DefaultASTVisitor::visit<Rust::AST::Type>(Rust::AST::Type&)
../../gcc/rust/ast/rust-ast-visitor.h:418
0xe48925 Rust::AST::DefaultASTVisitor::visit(Rust::AST::StructField&)
../../gcc/rust/ast/rust-ast-visitor.cc:915
0xe48925 Rust::AST::DefaultASTVisitor::visit(Rust::AST::StructStruct&)
../../gcc/rust/ast/rust-ast-visitor.cc:928
0xeb340a Rust::CfgStrip::visit(Rust::AST::StructStruct&)
../../gcc/rust/expand/rust-cfg-strip.cc:1890
0xeb340a Rust::CfgStrip::visit(Rust::AST::StructStruct&)
../../gcc/rust/expand/rust-cfg-strip.cc:1880
0xe4262f void Rust::AST::DefaultASTVisitor::visit<Rust::AST::Item>(std::unique_ptr<Rust::AST::Item, std::default_delete<Rust::AST::Item> >&)
../../gcc/rust/ast/rust-ast-visitor.h:422
0xe4262f Rust::AST::DefaultASTVisitor::visit(Rust::AST::Crate&)
../../gcc/rust/ast/rust-ast-visitor.cc:39
0xeafc39 Rust::CfgStrip::visit(Rust::AST::Crate&)
../../gcc/rust/expand/rust-cfg-strip.cc:165
0xe7aed8 Rust::Session::expansion(Rust::AST::Crate&, Rust::Resolver2_0::NameResolutionContext&)
../../gcc/rust/rust-session-manager.cc:943
Please submit a full bug report, with preprocessed source (by using -freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.