aboutsummaryrefslogtreecommitdiff
path: root/crates
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2020-10-07 21:46:33 +0100
committerGitHub <[email protected]>2020-10-07 21:46:33 +0100
commite95e666b106b2f63ab2b350e656c9e8b96441fa7 (patch)
treecae4a578e5aef08fc2eb2c0875c316bac15312b5 /crates
parent83a651b123c08d786d1328293fc0327252a6d5d3 (diff)
parent37df2138ecb4a66aa8547467c7774dc9d378567b (diff)
Merge #6161
6161: Bump chalk to use latest git to get upstream fix r=jonas-schievink a=Ameobea * Chalk very recently (like an hour ago) merged a fix that prevents rust analyzer from panicking. This allows it to be usable again for code that hits those situations. See #6134, #6145, Probably #6120 Co-authored-by: Casey Primozic <[email protected]>
Diffstat (limited to 'crates')
-rw-r--r--crates/hir_ty/Cargo.toml6
-rw-r--r--crates/hir_ty/src/traits/chalk.rs14
-rw-r--r--crates/hir_ty/src/traits/chalk/mapping.rs2
3 files changed, 19 insertions, 3 deletions
diff --git a/crates/hir_ty/Cargo.toml b/crates/hir_ty/Cargo.toml
index ed1c911c2..0f3c85926 100644
--- a/crates/hir_ty/Cargo.toml
+++ b/crates/hir_ty/Cargo.toml
@@ -17,9 +17,9 @@ ena = "0.14.0"
17log = "0.4.8" 17log = "0.4.8"
18rustc-hash = "1.1.0" 18rustc-hash = "1.1.0"
19scoped-tls = "1" 19scoped-tls = "1"
20chalk-solve = { version = "0.30.0" } 20chalk-solve = "0.32"
21chalk-ir = { version = "0.30.0" } 21chalk-ir = "0.32"
22chalk-recursive = { version = "0.30.0" } 22chalk-recursive = "0.32"
23 23
24stdx = { path = "../stdx", version = "0.0.0" } 24stdx = { path = "../stdx", version = "0.0.0" }
25hir_def = { path = "../hir_def", version = "0.0.0" } 25hir_def = { path = "../hir_def", version = "0.0.0" }
diff --git a/crates/hir_ty/src/traits/chalk.rs b/crates/hir_ty/src/traits/chalk.rs
index 009b17a7f..cbe5cd7dd 100644
--- a/crates/hir_ty/src/traits/chalk.rs
+++ b/crates/hir_ty/src/traits/chalk.rs
@@ -330,6 +330,20 @@ impl<'a> chalk_solve::RustIrDatabase<Interner> for ChalkContext<'a> {
330 fn fn_def_name(&self, fn_def_id: chalk_ir::FnDefId<Interner>) -> String { 330 fn fn_def_name(&self, fn_def_id: chalk_ir::FnDefId<Interner>) -> String {
331 format!("fn_{}", fn_def_id.0) 331 format!("fn_{}", fn_def_id.0)
332 } 332 }
333 fn generator_datum(
334 &self,
335 _: chalk_ir::GeneratorId<Interner>,
336 ) -> std::sync::Arc<chalk_solve::rust_ir::GeneratorDatum<Interner>> {
337 // FIXME
338 unimplemented!()
339 }
340 fn generator_witness_datum(
341 &self,
342 _: chalk_ir::GeneratorId<Interner>,
343 ) -> std::sync::Arc<chalk_solve::rust_ir::GeneratorWitnessDatum<Interner>> {
344 // FIXME
345 unimplemented!()
346 }
333} 347}
334 348
335pub(crate) fn program_clauses_for_chalk_env_query( 349pub(crate) fn program_clauses_for_chalk_env_query(
diff --git a/crates/hir_ty/src/traits/chalk/mapping.rs b/crates/hir_ty/src/traits/chalk/mapping.rs
index d42f4bba9..be3301313 100644
--- a/crates/hir_ty/src/traits/chalk/mapping.rs
+++ b/crates/hir_ty/src/traits/chalk/mapping.rs
@@ -399,6 +399,8 @@ impl ToChalk for TypeCtor {
399 // this should not be reached, since we don't represent TypeName::Error with TypeCtor 399 // this should not be reached, since we don't represent TypeName::Error with TypeCtor
400 unreachable!() 400 unreachable!()
401 } 401 }
402 TypeName::Generator(_) => unimplemented!(), // FIXME
403 TypeName::GeneratorWitness(_) => unimplemented!(), // FIXME
402 } 404 }
403 } 405 }
404} 406}