Find a file
bors[bot] 06638ff848
Merge #4741
4741: Fix type inference failure when built with log/kv_unstable r=flodiebold a=dtolnay

This code is broken by an `impl From<kv::Error> for fmt::Error` in the log crate when building in a codebase that has the log/kv_unstable feature enabled.

```console
$ cargo check --manifest-path crates/ra_hir_def/Cargo.toml
    Checking ra_hir_def v0.1.0
    Finished dev [unoptimized] target(s) in 0.75s

$ cargo check --manifest-path crates/ra_hir_def/Cargo.toml --features log/kv_unstable
    Checking ra_hir_def v0.1.0
error[E0282]: type annotations needed for the closure `fn(&str) -> std::result::Result<(), _>`
   --> crates/ra_hir_def/src/path.rs:278:17
    |
278 |                 f.write_str("::")?;
    |                 ^^^^^^^^^^^^^^^^^^ cannot infer type
    |
help: give this closure an explicit return type without `_` placeholders
    |
276 |         let mut add_segment = |s| -> std::result::Result<(), _> {
    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
```

https://github.com/rust-lang/log/issues/397

Co-authored-by: David Tolnay <dtolnay@gmail.com>
2020-06-04 08:09:56 +00:00
.cargo Alternative quite tests alias 2019-11-20 22:22:32 +03:00
.github Fix conflict between nightly branch and tag 2020-05-25 16:31:19 +02:00
.vscode vscode client side tests 2020-05-20 22:31:39 +03:00
crates Fix type inference failure when built with log/kv_unstable 2020-06-03 19:06:02 -07:00
docs Bufgix 2020-06-04 01:48:47 +03:00
editors/code Merge branch 'master' into compute-lazy-assits 2020-06-03 19:26:01 +02:00
xtask Don't store generated docs in the repo 2020-06-03 18:26:50 +02:00
.gitattributes Set text to autodetect and use LF 2019-11-14 19:44:37 -05:00
.gitignore Don't store generated docs in the repo 2020-06-03 18:26:50 +02:00
bors.toml Fix bors config? 2020-05-24 16:07:46 +02:00
Cargo.lock Cargo update 2020-06-03 09:43:27 -04:00
Cargo.toml Upgrade Chalk 2020-05-27 21:07:08 +02:00
LICENSE-APACHE Licenses 2018-01-10 22:47:04 +03:00
LICENSE-MIT Licenses 2018-01-10 22:47:04 +03:00
README.md Link forum topic 2020-05-28 10:19:01 +02:00
rustfmt.toml Remove forcing \n via rustfmt 2019-11-02 22:19:59 +03:00

rust-analyzer logo

rust-analyzer is an experimental modular compiler frontend for the Rust language. It is a part of a larger rls-2.0 effort to create excellent IDE support for Rust. If you want to get involved, check the rls-2.0 working group:

https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Fwg-rls-2.2E0

Work on rust-analyzer is sponsored by

Ferrous Systems

Quick Start

https://rust-analyzer.github.io/manual.html#installation

Documentation

If you want to contribute to rust-analyzer or are just curious about how things work under the hood, check the ./docs/dev folder.

If you want to use rust-analyzer's language server with your editor of choice, check the manual folder. It also contains some tips & tricks to help you be more productive when using rust-analyzer.

Communication

For usage and troubleshooting requests, please use "IDEs and Editors" category of the Rust forum:

https://users.rust-lang.org/c/ide/14

For questions about development and implementation, join rls-2.0 working group on Zulip:

https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frls-2.2E0

License

Rust analyzer is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.