rust-analyzer/crates
Roland Ruckerbauer d0f1334226 Fixed cast expression parsing in ra_syntax.
The cast expression expected any type via types::type_() function,
but the language spec does only allow TypeNoBounds (types without direct extra bounds
via `+`).

**Example:**

```rust
fn test() {
	6i8 as i32 + 5;
}
```

This fails, because the types::type_() function which should parse the type after the
as keyword is greedy, and takes all plus sign after path types as extra.

My proposed fix is to replace the not implemented `type_no_plus()` just calls (`type_()`)
function, which is used at several places. The replacement is `type_with_bounds_cond(p: &mut Parser, allow_bounds: bool)`, which passes the condition to relevant sub-parsers.

This function is then called by `type_()` and the new public `type_no_bounds()`.
2018-12-17 17:26:24 +01:00
..
gen_lsp_server modernize even more 2018-12-06 21:16:37 +03:00
ra_analysis rename Edit to TextEdit and AtomEdit to AtomTextEdit 2018-12-11 19:07:17 +01:00
ra_cli modernize even more 2018-12-06 21:16:37 +03:00
ra_db resolve extern crates propertly 2018-12-09 13:49:54 +03:00
ra_editor rename Edit to TextEdit and AtomEdit to AtomTextEdit 2018-12-11 19:07:17 +01:00
ra_hir verbose assertions in SourceFileItems 2018-12-09 14:21:54 +03:00
ra_lsp_server rename Edit to TextEdit and AtomEdit to AtomTextEdit 2018-12-11 19:07:17 +01:00
ra_syntax Fixed cast expression parsing in ra_syntax. 2018-12-17 17:26:24 +01:00
ra_text_edit rename Edit to TextEdit and AtomEdit to AtomTextEdit 2018-12-11 19:07:17 +01:00
test_utils Use json comparison code from cargo for heavy tests 2018-12-06 21:32:15 +01:00
tools fix installation on windows 2018-12-17 11:26:41 +03:00