Aleksey Kladov
0320ebdd10
Use Index
for CrateGraph
2020-03-09 11:11:59 +01:00
Kirill Bulatov
e1aa96f2c5
Less abstract CrateData api
2020-03-09 11:26:46 +02:00
Florian Diebold
9ce30281f6
Don't reuse the Chalk solver
...
This slows down analysis-stats a bit (~5% in my measurement), but improves
incremental checking a lot because we can reuse trait solve results.
2020-03-06 23:04:14 +01:00
Aleksey Kladov
b33b843f40
Allow specifying additional info on call to profile
2020-03-06 17:36:51 +01:00
Aleksey Kladov
a1e1869554
Rename ast::ImplBlock -> ast::ImplDef
2020-02-29 21:33:15 +01:00
Laurențiu Nicola
ed69482d90
Bump chalk and replace TypeFamily with Interner
2020-02-24 22:36:57 +02:00
Florian Diebold
0dfbbaf03b
Implement dyn Trait unsizing as well
2020-02-22 11:09:21 +01:00
Florian Diebold
de39d221a1
Implement unsize coercion using proper trait solving
2020-02-22 11:09:21 +01:00
Kirill Bulatov
eceaf94f19
More manual clippy fixes
2020-02-18 16:12:37 +02:00
Florian Diebold
3484d727c3
Extend analysis-stats a bit
...
This adds some tools helpful when debugging nondeterminism in analysis-stats:
- a `--randomize` option that analyses everything in random order
- a `-vv` option that prints even more detail
Also add a debug log if Chalk fuel is exhausted (which would be a source of
nondeterminism, but didn't happen in my tests).
I found one source of nondeterminism (rust-lang/chalk#331 ), but there are still
other cases remaining.
2020-02-15 18:04:01 +01:00
Florian Diebold
339a11c33c
Tweak Chalk settings
2020-01-27 21:52:35 +01:00
Florian Diebold
96ddf2962c
Upgrade Chalk
2020-01-27 21:25:33 +01:00
Aleksey Kladov
5654387e77
Don't panic if chalk panics
2020-01-13 19:00:42 +01:00
Florian Diebold
4053fcfca0
Introduce our own Chalk TypeFamily, instead of using ChalkIr
...
It's not very different, except we can directly use Salsa IDs instead of casting
them. This means we need to refactor the handling of errors to get rid of
UNKNOWN_TRAIT though.
2019-12-23 00:08:03 +01:00
Florian Diebold
6b5efe5bda
Refactor Chalk integration some more
2019-12-23 00:08:03 +01:00
Florian Diebold
67a2555f6d
Update Chalk, clean up Chalk integration a bit
2019-12-23 00:08:03 +01:00
Florian Diebold
176207f1e8
Extract built-in trait implementations to separate module
...
This untangles the builtin logic from the Chalk translation.
2019-12-03 12:30:50 +01:00
Aleksey Kladov
a87579500a
Move Ty
2019-11-27 21:16:00 +03:00