about summary refs log tree commit diff
path: root/src/rustllvm/RustWrapper.cpp
diff options
context:
space:
mode:
authorZack M. Davis <code@zackmdavis.net>2017-07-15 10:26:11 -0700
committerZack M. Davis <code@zackmdavis.net>2017-07-15 12:46:03 -0700
commit80c603fc6589aaf70df7c142723eef9a1d28aec5 (patch)
treec6e140a392247791f53cc08ca691d463e077707b /src/rustllvm/RustWrapper.cpp
parenteac74104054ed1390f8c92be1d4163af128d38de (diff)
downloadrust-80c603fc6589aaf70df7c142723eef9a1d28aec5.tar.gz
rust-80c603fc6589aaf70df7c142723eef9a1d28aec5.zip
path, not name, in sole-argument variant type mismatch suggestion
We want the suggested replacement (which IDE tooling and such might offer to
automatically swap in) to, like, actually be correct: suggesting `MyVariant(x)`
when the actual fix is `MyEnum::MyVariant(x)` might be better than nothing, but
Rust is supposed to be the future of computing: we're better than better than
nothing.

As an exceptional case, we excise the prelude path, preferring to suggest
`Some` or `Ok` rather than `std::prelude::v1::Some` and
`std::prelude::v2::Ok`. (It's not worth the effort to future-proof against
hypothetical preludes v2, v3, &c.: we trust our successors to grep—excuse me,
ripgrep—for that.)

Also, don't make this preëmpt the existing probe-for-return-type suggestions,
despite their being looked unfavorably upon, at least in this situation
(https://github.com/rust-lang/rust/issues/42764#issuecomment-311388958): Cody
Schafer pointed out that that's a separate issue
(https://github.com/rust-lang/rust/pull/43178#issuecomment-314953229).

This is in the matter of #42764.
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions