about summary refs log tree commit diff
path: root/src/rustllvm/RustWrapper.cpp
diff options
context:
space:
mode:
authorYuki Okushi <huyuumi.dev@gmail.com>2020-05-30 12:39:14 +0900
committerGitHub <noreply@github.com>2020-05-30 12:39:14 +0900
commit7624ac7dc4b44f5ef9d1ee1e9959e251db77d5ab (patch)
tree565819b0875a100d8b10f8dfebe62de951837d72 /src/rustllvm/RustWrapper.cpp
parenta5fb7fcab376c0d21173f33ceefc4f69998f8964 (diff)
parent1c30c9e92bdae1814dbae9367f214b4819cdd0de (diff)
downloadrust-7624ac7dc4b44f5ef9d1ee1e9959e251db77d5ab.tar.gz
rust-7624ac7dc4b44f5ef9d1ee1e9959e251db77d5ab.zip
Rollup merge of #72621 - Aaron1011:fix/trait-select-error, r=nikomatsakis
Don't bail out of trait selection when predicate references an error

Fixes #72590

With PR #70551, observing a `ty::Error` guarantees that compilation is
going to fail. Therefore, there are no soundness impliciations to
continuing on when we encounter a `ty::Error` - we can only affect
whether or not additional error messags are emitted.

By not bailing out, we avoid incorrectly determining that types are
`!Sized` when a type error is present, which allows us to avoid emitting
additional spurious error messages.

The original comment mentioned this code being shared by coherence -
howver, this change resulted in no diagnostic changes in any of the
existing tests.
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions