mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-28 12:54:58 +00:00
Ignore main functions not in root module
This commit is contained in:
parent
4cb3ecce3f
commit
50e28aec25
1 changed files with 7 additions and 1 deletions
|
@ -226,7 +226,9 @@ pub(crate) fn runnable_fn(sema: &Semantics<RootDatabase>, def: hir::Function) ->
|
||||||
let func = def.source(sema.db)?;
|
let func = def.source(sema.db)?;
|
||||||
let name_string = def.name(sema.db).to_string();
|
let name_string = def.name(sema.db).to_string();
|
||||||
|
|
||||||
let kind = if name_string == "main" {
|
let root = def.krate(sema.db)?.root_module(sema.db);
|
||||||
|
|
||||||
|
let kind = if name_string == "main" && def.module(sema.db) == root {
|
||||||
RunnableKind::Bin
|
RunnableKind::Bin
|
||||||
} else {
|
} else {
|
||||||
let canonical_path = {
|
let canonical_path = {
|
||||||
|
@ -444,6 +446,10 @@ fn test_foo() {}
|
||||||
|
|
||||||
#[bench]
|
#[bench]
|
||||||
fn bench() {}
|
fn bench() {}
|
||||||
|
|
||||||
|
mod not_a_root {
|
||||||
|
fn main() {}
|
||||||
|
}
|
||||||
"#,
|
"#,
|
||||||
&[&BIN, &TEST, &TEST, &BENCH],
|
&[&BIN, &TEST, &TEST, &BENCH],
|
||||||
expect![[r#"
|
expect![[r#"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue