rust/crates
bors[bot] f9ec7cebef
Merge #4377
4377: Implement better handling of divergence r=matklad a=flodiebold

Divergence here means that for some reason, the end of a block will not be reached. We tried to model this just using the never type, but that doesn't work fully (e.g. in `let x = { loop {}; "foo" };` x should still have type `&str`); so this introduces a `diverges` flag that the type checker keeps track of, like rustc does. We also add some checking for `break`, but no support for break-with-value or labeled breaks yet.

Co-authored-by: Florian Diebold <florian.diebold@freiheit.com>
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2020-05-08 18:09:25 +00:00
..
ra_arena Extract messy tree handling out of profiling code 2020-04-25 21:22:40 +02:00
ra_assists Simplify 2020-05-07 17:32:01 +02:00
ra_cfg Move feature desugaring to the right abstraction layer 2020-05-08 02:56:53 +02:00
ra_db Add fixture doc comment 2020-05-06 18:09:28 +02:00
ra_flycheck Cleanup 2020-05-08 14:55:28 +02:00
ra_fmt Introduce EffectExpr 2020-05-02 11:21:39 +02:00
ra_hir Remove HasVisibility implementation 2020-05-07 16:31:51 +03:00
ra_hir_def Remove HasVisibility implementation 2020-05-07 16:31:51 +03:00
ra_hir_expand Merge #4234 2020-05-02 10:30:49 +00:00
ra_hir_ty Add diagnostic for break outside of loop 2020-05-08 19:48:03 +02:00
ra_ide Merge #4346 2020-05-07 16:29:01 +00:00
ra_ide_db Remove HasVisibility implementation 2020-05-07 16:31:51 +03:00
ra_mbe Rename ImplItem to AssocItem 2020-05-05 23:56:10 +08:00
ra_parser Fix parsing of blocks without { 2020-05-02 14:35:17 +02:00
ra_proc_macro proc_macro: add ability to log to stderr and view output in vscode 2020-04-23 01:57:02 +03:00
ra_proc_macro_srv Bump deps 2020-05-01 15:29:03 +03:00
ra_prof Simplify profiler impl (bubble up Option and shorten code 2020-04-26 00:55:49 +03:00
ra_project_model Add stderr to error message 2020-05-08 18:53:53 +02:00
ra_syntax Use more natural signature for Edit::apply 2020-05-05 23:23:29 +02:00
ra_text_edit Fix TODO 2020-05-06 13:21:49 +02:00
ra_toolchain Cleanup 2020-05-08 14:55:28 +02:00
ra_tt Improve tt::Subtree debug print 2020-04-10 00:17:32 +08:00
rust-analyzer Merge #4296 2020-05-07 18:50:00 +00:00
stdx Move snake case method to heck 2020-05-03 21:35:21 +03:00
test_utils Allow fixture strings with unindented first line 2020-05-06 18:09:28 +02:00