diff options
| author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2021-09-24 18:42:44 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-09-24 18:42:44 +0000 |
| commit | e372bdce2e980a5a7636645ee277d8bf26b1cd4e (patch) | |
| tree | 7212442c8de15677fcc7dbe9254ced95167aa0be | |
| parent | 8b08666343bbe9716739da57a10d5c8647a28b27 (diff) | |
| parent | 5967f3d3a9802985c7ce4ca39c70e77157096bf5 (diff) | |
| download | rust-e372bdce2e980a5a7636645ee277d8bf26b1cd4e.tar.gz rust-e372bdce2e980a5a7636645ee277d8bf26b1cd4e.zip | |
Merge #10338
10338: fix: Fix diagnostics in unnamed consts r=jonas-schievink a=jonas-schievink bors r+ Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
| -rw-r--r-- | crates/hir/src/lib.rs | 7 | ||||
| -rw-r--r-- | crates/ide_diagnostics/src/handlers/missing_ok_or_some_in_tail_expr.rs | 11 |
2 files changed, 16 insertions, 2 deletions
diff --git a/crates/hir/src/lib.rs b/crates/hir/src/lib.rs index 3b0c29e87e8..99ab630a300 100644 --- a/crates/hir/src/lib.rs +++ b/crates/hir/src/lib.rs @@ -673,7 +673,12 @@ impl Module { pub fn declarations(self, db: &dyn HirDatabase) -> Vec<ModuleDef> { let def_map = self.id.def_map(db.upcast()); - def_map[self.id.local_id].scope.declarations().map(ModuleDef::from).collect() + let scope = &def_map[self.id.local_id].scope; + scope + .declarations() + .map(ModuleDef::from) + .chain(scope.unnamed_consts().map(|id| ModuleDef::Const(Const::from(id)))) + .collect() } pub fn impl_defs(self, db: &dyn HirDatabase) -> Vec<Impl> { diff --git a/crates/ide_diagnostics/src/handlers/missing_ok_or_some_in_tail_expr.rs b/crates/ide_diagnostics/src/handlers/missing_ok_or_some_in_tail_expr.rs index 6d8e74b6fd5..74a72654646 100644 --- a/crates/ide_diagnostics/src/handlers/missing_ok_or_some_in_tail_expr.rs +++ b/crates/ide_diagnostics/src/handlers/missing_ok_or_some_in_tail_expr.rs @@ -185,7 +185,16 @@ static A: Option<()> = {($0)}; r#" static A: Option<()> = {Some(())}; "#, - ) + ); + check_fix( + r#" +//- minicore: option, result +const _: Option<()> = {($0)}; + "#, + r#" +const _: Option<()> = {Some(())}; + "#, + ); } #[test] |
