mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-25 04:06:55 +01:00
Ignore tests w/ current/next revisions from compare-mode=next-solver
This commit is contained in:
parent
76ee6fc926
commit
383051092f
@ -1,6 +1,7 @@
|
||||
// Testing inference capabilities.
|
||||
//@ check-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(inherent_associated_types)]
|
||||
|
@ -2,6 +2,7 @@
|
||||
//@ edition:2021
|
||||
//@ build-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(async_closure)]
|
||||
|
@ -2,6 +2,7 @@
|
||||
//@ edition:2021
|
||||
//@ build-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(async_closure)]
|
||||
|
@ -1,6 +1,7 @@
|
||||
//@ aux-build:block-on.rs
|
||||
//@ edition:2018
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ build-pass (since it ICEs during mono)
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ edition:2018
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ check-pass
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ edition:2021
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ check-pass
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
warning: the feature `return_type_notation` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/normalizing-self-auto-trait-issue-109924.rs:6:12
|
||||
--> $DIR/normalizing-self-auto-trait-issue-109924.rs:7:12
|
||||
|
|
||||
LL | #![feature(return_type_notation)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -1,5 +1,5 @@
|
||||
warning: the feature `return_type_notation` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/normalizing-self-auto-trait-issue-109924.rs:6:12
|
||||
--> $DIR/normalizing-self-auto-trait-issue-109924.rs:7:12
|
||||
|
|
||||
LL | #![feature(return_type_notation)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ check-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ edition:2021
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0380]: auto traits cannot have associated items
|
||||
--> $DIR/issue-23080-2.rs:8:10
|
||||
--> $DIR/issue-23080-2.rs:9:10
|
||||
|
|
||||
LL | unsafe auto trait Trait {
|
||||
| ----- auto traits cannot have associated items
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0380]: auto traits cannot have associated items
|
||||
--> $DIR/issue-23080-2.rs:8:10
|
||||
--> $DIR/issue-23080-2.rs:9:10
|
||||
|
|
||||
LL | unsafe auto trait Trait {
|
||||
| ----- auto traits cannot have associated items
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(auto_traits)]
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0282]: type annotations needed
|
||||
--> $DIR/infer-signature-from-impl.rs:17:16
|
||||
--> $DIR/infer-signature-from-impl.rs:18:16
|
||||
|
|
||||
LL | needs_foo(|x| {
|
||||
| ^
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@[next] known-bug: trait-system-refactor-initiative#71
|
||||
//@[current] check-pass
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0119]: conflicting implementations of trait `MyTrait<_>` for type `(Box<(MyType,)>, _)`
|
||||
--> $DIR/normalize-for-errors.rs:16:1
|
||||
--> $DIR/normalize-for-errors.rs:17:1
|
||||
|
|
||||
LL | impl<T: Copy, S: Iterator> MyTrait<S> for (T, S::Item) {}
|
||||
| ------------------------------------------------------ first implementation here
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0119]: conflicting implementations of trait `MyTrait<_>` for type `(Box<(MyType,)>, <_ as Iterator>::Item)`
|
||||
--> $DIR/normalize-for-errors.rs:16:1
|
||||
--> $DIR/normalize-for-errors.rs:17:1
|
||||
|
|
||||
LL | impl<T: Copy, S: Iterator> MyTrait<S> for (T, S::Item) {}
|
||||
| ------------------------------------------------------ first implementation here
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
struct MyType;
|
||||
|
@ -1,47 +1,47 @@
|
||||
error[E0391]: cycle detected when type-checking `foo`
|
||||
--> $DIR/clone-rpit.rs:12:1
|
||||
--> $DIR/clone-rpit.rs:13:1
|
||||
|
|
||||
LL | pub fn foo<'a, 'b>() -> impl Clone {
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
note: ...which requires coroutine witness types for `foo::{closure#0}`...
|
||||
--> $DIR/clone-rpit.rs:13:5
|
||||
--> $DIR/clone-rpit.rs:14:5
|
||||
|
|
||||
LL | move |_: ()| {
|
||||
| ^^^^^^^^^^^^
|
||||
note: ...which requires promoting constants in MIR for `foo::{closure#0}`...
|
||||
--> $DIR/clone-rpit.rs:13:5
|
||||
--> $DIR/clone-rpit.rs:14:5
|
||||
|
|
||||
LL | move |_: ()| {
|
||||
| ^^^^^^^^^^^^
|
||||
note: ...which requires preparing `foo::{closure#0}` for borrow checking...
|
||||
--> $DIR/clone-rpit.rs:13:5
|
||||
--> $DIR/clone-rpit.rs:14:5
|
||||
|
|
||||
LL | move |_: ()| {
|
||||
| ^^^^^^^^^^^^
|
||||
note: ...which requires checking if `foo::{closure#0}` contains FFI-unwind calls...
|
||||
--> $DIR/clone-rpit.rs:13:5
|
||||
--> $DIR/clone-rpit.rs:14:5
|
||||
|
|
||||
LL | move |_: ()| {
|
||||
| ^^^^^^^^^^^^
|
||||
note: ...which requires building MIR for `foo::{closure#0}`...
|
||||
--> $DIR/clone-rpit.rs:13:5
|
||||
--> $DIR/clone-rpit.rs:14:5
|
||||
|
|
||||
LL | move |_: ()| {
|
||||
| ^^^^^^^^^^^^
|
||||
note: ...which requires match-checking `foo::{closure#0}`...
|
||||
--> $DIR/clone-rpit.rs:13:5
|
||||
--> $DIR/clone-rpit.rs:14:5
|
||||
|
|
||||
LL | move |_: ()| {
|
||||
| ^^^^^^^^^^^^
|
||||
note: ...which requires type-checking `foo::{closure#0}`...
|
||||
--> $DIR/clone-rpit.rs:13:5
|
||||
--> $DIR/clone-rpit.rs:14:5
|
||||
|
|
||||
LL | move |_: ()| {
|
||||
| ^^^^^^^^^^^^
|
||||
= note: ...which again requires type-checking `foo`, completing the cycle
|
||||
note: cycle used when computing type of opaque `foo::{opaque#0}`
|
||||
--> $DIR/clone-rpit.rs:12:25
|
||||
--> $DIR/clone-rpit.rs:13:25
|
||||
|
|
||||
LL | pub fn foo<'a, 'b>() -> impl Clone {
|
||||
| ^^^^^^^^^^
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@[current] check-pass
|
||||
//@[next] known-bug: trait-system-refactor-initiative#82
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ run-pass
|
||||
|
||||
|
@ -1,15 +1,15 @@
|
||||
error[E0277]: `{static coroutine@$DIR/static-not-unpin.rs:14:25: 14:34}` cannot be unpinned
|
||||
--> $DIR/static-not-unpin.rs:17:18
|
||||
error[E0277]: `{static coroutine@$DIR/static-not-unpin.rs:15:25: 15:34}` cannot be unpinned
|
||||
--> $DIR/static-not-unpin.rs:18:18
|
||||
|
|
||||
LL | assert_unpin(coroutine);
|
||||
| ------------ ^^^^^^^^^ the trait `Unpin` is not implemented for `{static coroutine@$DIR/static-not-unpin.rs:14:25: 14:34}`
|
||||
| ------------ ^^^^^^^^^ the trait `Unpin` is not implemented for `{static coroutine@$DIR/static-not-unpin.rs:15:25: 15:34}`
|
||||
| |
|
||||
| required by a bound introduced by this call
|
||||
|
|
||||
= note: consider using the `pin!` macro
|
||||
consider using `Box::pin` if you need to access the pinned value outside of the current scope
|
||||
note: required by a bound in `assert_unpin`
|
||||
--> $DIR/static-not-unpin.rs:10:20
|
||||
--> $DIR/static-not-unpin.rs:11:20
|
||||
|
|
||||
LL | fn assert_unpin<T: Unpin>(_: T) {
|
||||
| ^^^^^ required by this bound in `assert_unpin`
|
||||
|
@ -1,15 +1,15 @@
|
||||
error[E0277]: `{static coroutine@$DIR/static-not-unpin.rs:14:25: 14:34}` cannot be unpinned
|
||||
--> $DIR/static-not-unpin.rs:17:18
|
||||
error[E0277]: `{static coroutine@$DIR/static-not-unpin.rs:15:25: 15:34}` cannot be unpinned
|
||||
--> $DIR/static-not-unpin.rs:18:18
|
||||
|
|
||||
LL | assert_unpin(coroutine);
|
||||
| ------------ ^^^^^^^^^ the trait `Unpin` is not implemented for `{static coroutine@$DIR/static-not-unpin.rs:14:25: 14:34}`
|
||||
| ------------ ^^^^^^^^^ the trait `Unpin` is not implemented for `{static coroutine@$DIR/static-not-unpin.rs:15:25: 15:34}`
|
||||
| |
|
||||
| required by a bound introduced by this call
|
||||
|
|
||||
= note: consider using the `pin!` macro
|
||||
consider using `Box::pin` if you need to access the pinned value outside of the current scope
|
||||
note: required by a bound in `assert_unpin`
|
||||
--> $DIR/static-not-unpin.rs:10:20
|
||||
--> $DIR/static-not-unpin.rs:11:20
|
||||
|
|
||||
LL | fn assert_unpin<T: Unpin>(_: T) {
|
||||
| ^^^^^ required by this bound in `assert_unpin`
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(coroutines)]
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ run-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[current] compile-flags: -C opt-level=0
|
||||
//@[next] compile-flags: -Znext-solver -C opt-level=0
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0277]: `&T` needs to have the same ABI as a pointer
|
||||
--> $DIR/check-size-at-cast-polymorphic-bad.rs:14:15
|
||||
--> $DIR/check-size-at-cast-polymorphic-bad.rs:15:15
|
||||
|
|
||||
LL | dyn_debug(t);
|
||||
| ^ `&T` needs to be a pointer-like type
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0277]: `&T` needs to have the same ABI as a pointer
|
||||
--> $DIR/check-size-at-cast-polymorphic-bad.rs:14:15
|
||||
--> $DIR/check-size-at-cast-polymorphic-bad.rs:15:15
|
||||
|
|
||||
LL | dyn_debug(t);
|
||||
| ^ `&T` needs to be a pointer-like type
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(dyn_star)]
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0277]: `dyn Iterator<Item = &'a mut u8>` is not an iterator
|
||||
--> $DIR/issue-20605.rs:5:17
|
||||
--> $DIR/issue-20605.rs:6:17
|
||||
|
|
||||
LL | for item in *things { *item = 0 }
|
||||
| ^^^^^^^ the trait `IntoIterator` is not implemented for `dyn Iterator<Item = &'a mut u8>`
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0277]: `dyn Iterator<Item = &'a mut u8>` is not an iterator
|
||||
--> $DIR/issue-20605.rs:5:17
|
||||
--> $DIR/issue-20605.rs:6:17
|
||||
|
|
||||
LL | for item in *things { *item = 0 }
|
||||
| ^^^^^^^ `dyn Iterator<Item = &'a mut u8>` is not an iterator
|
||||
@ -7,25 +7,25 @@ LL | for item in *things { *item = 0 }
|
||||
= help: the trait `IntoIterator` is not implemented for `dyn Iterator<Item = &'a mut u8>`
|
||||
|
||||
error: the type `<dyn Iterator<Item = &'a mut u8> as IntoIterator>::IntoIter` is not well-formed
|
||||
--> $DIR/issue-20605.rs:5:17
|
||||
--> $DIR/issue-20605.rs:6:17
|
||||
|
|
||||
LL | for item in *things { *item = 0 }
|
||||
| ^^^^^^^
|
||||
|
||||
error: the type `&mut <dyn Iterator<Item = &'a mut u8> as IntoIterator>::IntoIter` is not well-formed
|
||||
--> $DIR/issue-20605.rs:5:17
|
||||
--> $DIR/issue-20605.rs:6:17
|
||||
|
|
||||
LL | for item in *things { *item = 0 }
|
||||
| ^^^^^^^
|
||||
|
||||
error: the type `Option<<<dyn Iterator<Item = &'a mut u8> as IntoIterator>::IntoIter as Iterator>::Item>` is not well-formed
|
||||
--> $DIR/issue-20605.rs:5:17
|
||||
--> $DIR/issue-20605.rs:6:17
|
||||
|
|
||||
LL | for item in *things { *item = 0 }
|
||||
| ^^^^^^^
|
||||
|
||||
error[E0614]: type `<dyn Iterator<Item = &'a mut u8> as IntoIterator>::Item` cannot be dereferenced
|
||||
--> $DIR/issue-20605.rs:5:27
|
||||
--> $DIR/issue-20605.rs:6:27
|
||||
|
|
||||
LL | for item in *things { *item = 0 }
|
||||
| ^^^^^
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
fn changer<'a>(mut things: Box<dyn Iterator<Item=&'a mut u8>>) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0049]: type `B` has 1 type parameter but its trait declaration has 0 type parameters
|
||||
--> $DIR/issue-102114.rs:14:12
|
||||
--> $DIR/issue-102114.rs:15:12
|
||||
|
|
||||
LL | type B<'b>;
|
||||
| -- expected 0 type parameters
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0049]: type `B` has 1 type parameter but its trait declaration has 0 type parameters
|
||||
--> $DIR/issue-102114.rs:14:12
|
||||
--> $DIR/issue-102114.rs:15:12
|
||||
|
|
||||
LL | type B<'b>;
|
||||
| -- expected 0 type parameters
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
trait A {
|
||||
|
19
tests/ui/higher-ranked/trait-bounds/fn-ptr.current.stderr
Normal file
19
tests/ui/higher-ranked/trait-bounds/fn-ptr.current.stderr
Normal file
@ -0,0 +1,19 @@
|
||||
error[E0277]: expected a `Fn(&'w ())` closure, found `fn(&'w ())`
|
||||
--> $DIR/fn-ptr.rs:13:5
|
||||
|
|
||||
LL | ice();
|
||||
| ^^^^^ expected an `Fn(&'w ())` closure, found `fn(&'w ())`
|
||||
|
|
||||
= help: the trait `for<'w> Fn<(&'w (),)>` is not implemented for `fn(&'w ())`
|
||||
note: required by a bound in `ice`
|
||||
--> $DIR/fn-ptr.rs:8:25
|
||||
|
|
||||
LL | fn ice()
|
||||
| --- required by a bound in this function
|
||||
LL | where
|
||||
LL | for<'w> fn(&'w ()): Fn(&'w ()),
|
||||
| ^^^^^^^^^^ required by this bound in `ice`
|
||||
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0277`.
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: classic next
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@[next] check-pass
|
||||
|
||||
@ -10,5 +11,5 @@ where
|
||||
|
||||
fn main() {
|
||||
ice();
|
||||
//[classic]~^ ERROR expected a `Fn(&'w ())` closure, found `fn(&'w ())`
|
||||
//[current]~^ ERROR expected a `Fn(&'w ())` closure, found `fn(&'w ())`
|
||||
}
|
||||
|
@ -0,0 +1,6 @@
|
||||
error: the compiler unexpectedly panicked. this is a bug.
|
||||
|
||||
query stack during panic:
|
||||
#0 [evaluate_obligation] evaluating trait selection obligation `for<'a> {async fn body@$DIR/future.rs:33:35: 35:2}: core::future::future::Future`
|
||||
#1 [codegen_select_candidate] computing candidate for `<strlen as Trait>`
|
||||
end of query stack
|
@ -1,15 +1,16 @@
|
||||
// ignore-tidy-linelength
|
||||
//@ edition:2021
|
||||
//@ revisions: classic next
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@[next] check-pass
|
||||
//@[classic] known-bug: #112347
|
||||
//@[classic] build-fail
|
||||
//@[classic] failure-status: 101
|
||||
//@[classic] normalize-stderr-test "note: .*\n\n" -> ""
|
||||
//@[classic] normalize-stderr-test "thread 'rustc' panicked.*\n.*\n" -> ""
|
||||
//@[classic] normalize-stderr-test "(error: internal compiler error: [^:]+):\d+:\d+: " -> "$1:LL:CC: "
|
||||
//@[classic] rustc-env:RUST_BACKTRACE=0
|
||||
//@[current] known-bug: #112347
|
||||
//@[current] build-fail
|
||||
//@[current] failure-status: 101
|
||||
//@[current] normalize-stderr-test "note: .*\n\n" -> ""
|
||||
//@[current] normalize-stderr-test "thread 'rustc' panicked.*\n.*\n" -> ""
|
||||
//@[current] normalize-stderr-test "(error: internal compiler error: [^:]+):\d+:\d+: " -> "$1:LL:CC: "
|
||||
//@[current] rustc-env:RUST_BACKTRACE=0
|
||||
|
||||
#![feature(unboxed_closures)]
|
||||
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ check-pass
|
||||
|
||||
|
@ -1,11 +1,11 @@
|
||||
error: {foo<ReEarlyParam(DefId(..), 0, 'a)>::{closure#0} closure_kind_ty=i8 closure_sig_as_fn_ptr_ty=extern "rust-call" fn(()) upvar_tys=()}
|
||||
--> $DIR/erased-regions-in-hidden-ty.rs:11:36
|
||||
--> $DIR/erased-regions-in-hidden-ty.rs:12:36
|
||||
|
|
||||
LL | fn foo<'a: 'a>(x: &'a Vec<i32>) -> impl Fn() + 'static {
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: Opaque(DefId(..), [ReErased])
|
||||
--> $DIR/erased-regions-in-hidden-ty.rs:17:13
|
||||
--> $DIR/erased-regions-in-hidden-ty.rs:18:13
|
||||
|
|
||||
LL | fn bar() -> impl Fn() + 'static {
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -1,11 +1,11 @@
|
||||
error: {foo<ReEarlyParam(DefId(..), 0, 'a)>::{closure#0} closure_kind_ty=i8 closure_sig_as_fn_ptr_ty=extern "rust-call" fn(()) upvar_tys=()}
|
||||
--> $DIR/erased-regions-in-hidden-ty.rs:11:36
|
||||
--> $DIR/erased-regions-in-hidden-ty.rs:12:36
|
||||
|
|
||||
LL | fn foo<'a: 'a>(x: &'a Vec<i32>) -> impl Fn() + 'static {
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: Opaque(DefId(..), [ReErased])
|
||||
--> $DIR/erased-regions-in-hidden-ty.rs:17:13
|
||||
--> $DIR/erased-regions-in-hidden-ty.rs:18:13
|
||||
|
|
||||
LL | fn bar() -> impl Fn() + 'static {
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@ compile-flags: -Zverbose-internals
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ normalize-stderr-test "DefId\([^\)]+\)" -> "DefId(..)"
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ check-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
//@ check-pass
|
||||
//@ edition: 2021
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![deny(refining_impl_trait)]
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0046]: not all trait items implemented, missing: `Error`
|
||||
--> $DIR/issue-103181-1.rs:11:5
|
||||
--> $DIR/issue-103181-1.rs:12:5
|
||||
|
|
||||
LL | type Error;
|
||||
| ---------- `Error` from trait
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0046]: not all trait items implemented, missing: `Error`
|
||||
--> $DIR/issue-103181-1.rs:11:5
|
||||
--> $DIR/issue-103181-1.rs:12:5
|
||||
|
|
||||
LL | type Error;
|
||||
| ---------- `Error` from trait
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ edition:2021
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0282]: type annotations needed
|
||||
--> $DIR/recursive-coroutine-boxed.rs:11:23
|
||||
--> $DIR/recursive-coroutine-boxed.rs:12:23
|
||||
|
|
||||
LL | let mut gen = Box::pin(foo());
|
||||
| ^^^^^^^^ cannot infer type of the type parameter `T` declared on the struct `Box`
|
||||
@ -13,7 +13,7 @@ LL | let mut gen = Box::<T>::pin(foo());
|
||||
| +++++
|
||||
|
||||
error[E0282]: type annotations needed
|
||||
--> $DIR/recursive-coroutine-boxed.rs:8:13
|
||||
--> $DIR/recursive-coroutine-boxed.rs:9:13
|
||||
|
|
||||
LL | fn foo() -> impl Coroutine<Yield = (), Return = ()> {
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type for opaque type `impl Coroutine<Yield = (), Return = ()>`
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[current] check-pass
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
#![feature(coroutines, coroutine_trait)]
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0733]: recursion in a coroutine requires boxing
|
||||
--> $DIR/recursive-coroutine-indirect.rs:10:5
|
||||
--> $DIR/recursive-coroutine-indirect.rs:11:5
|
||||
|
|
||||
LL | move || {
|
||||
| ^^^^^^^
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0733]: recursion in a coroutine requires boxing
|
||||
--> $DIR/recursive-coroutine-indirect.rs:10:5
|
||||
--> $DIR/recursive-coroutine-indirect.rs:11:5
|
||||
|
|
||||
LL | move || {
|
||||
| ^^^^^^^
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
//@[next] build-fail
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ build-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
fn test() -> Option<impl Sized> {
|
||||
|
@ -1,16 +1,16 @@
|
||||
error: opaque type's hidden type cannot be another opaque type from the same scope
|
||||
--> $DIR/two_tait_defining_each_other.rs:16:5
|
||||
--> $DIR/two_tait_defining_each_other.rs:17:5
|
||||
|
|
||||
LL | x // A's hidden type is `Bar`, because all the hidden types of `B` are compared with each other
|
||||
| ^ one of the two opaque types used here has to be outside its defining scope
|
||||
|
|
||||
note: opaque type whose hidden type is being assigned
|
||||
--> $DIR/two_tait_defining_each_other.rs:8:10
|
||||
--> $DIR/two_tait_defining_each_other.rs:9:10
|
||||
|
|
||||
LL | type B = impl Foo;
|
||||
| ^^^^^^^^
|
||||
note: opaque type being used as hidden type
|
||||
--> $DIR/two_tait_defining_each_other.rs:7:10
|
||||
--> $DIR/two_tait_defining_each_other.rs:8:10
|
||||
|
|
||||
LL | type A = impl Foo;
|
||||
| ^^^^^^^^
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@[next] check-pass
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
error: unconstrained opaque type
|
||||
--> $DIR/two_tait_defining_each_other2.rs:5:10
|
||||
--> $DIR/two_tait_defining_each_other2.rs:6:10
|
||||
|
|
||||
LL | type A = impl Foo;
|
||||
| ^^^^^^^^
|
||||
@ -7,18 +7,18 @@ LL | type A = impl Foo;
|
||||
= note: `A` must be used in combination with a concrete type within the same module
|
||||
|
||||
error: opaque type's hidden type cannot be another opaque type from the same scope
|
||||
--> $DIR/two_tait_defining_each_other2.rs:12:5
|
||||
--> $DIR/two_tait_defining_each_other2.rs:13:5
|
||||
|
|
||||
LL | x // B's hidden type is A (opaquely)
|
||||
| ^ one of the two opaque types used here has to be outside its defining scope
|
||||
|
|
||||
note: opaque type whose hidden type is being assigned
|
||||
--> $DIR/two_tait_defining_each_other2.rs:6:10
|
||||
--> $DIR/two_tait_defining_each_other2.rs:7:10
|
||||
|
|
||||
LL | type B = impl Foo;
|
||||
| ^^^^^^^^
|
||||
note: opaque type being used as hidden type
|
||||
--> $DIR/two_tait_defining_each_other2.rs:5:10
|
||||
--> $DIR/two_tait_defining_each_other2.rs:6:10
|
||||
|
|
||||
LL | type A = impl Foo;
|
||||
| ^^^^^^^^
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0284]: type annotations needed: cannot satisfy `_ == A`
|
||||
--> $DIR/two_tait_defining_each_other2.rs:10:8
|
||||
--> $DIR/two_tait_defining_each_other2.rs:11:8
|
||||
|
|
||||
LL | fn muh(x: A) -> B {
|
||||
| ^ cannot satisfy `_ == A`
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
#![feature(type_alias_impl_trait)]
|
||||
|
||||
|
@ -1,16 +1,16 @@
|
||||
error: opaque type's hidden type cannot be another opaque type from the same scope
|
||||
--> $DIR/two_tait_defining_each_other3.rs:13:16
|
||||
--> $DIR/two_tait_defining_each_other3.rs:14:16
|
||||
|
|
||||
LL | return x; // B's hidden type is A (opaquely)
|
||||
| ^ one of the two opaque types used here has to be outside its defining scope
|
||||
|
|
||||
note: opaque type whose hidden type is being assigned
|
||||
--> $DIR/two_tait_defining_each_other3.rs:7:10
|
||||
--> $DIR/two_tait_defining_each_other3.rs:8:10
|
||||
|
|
||||
LL | type B = impl Foo;
|
||||
| ^^^^^^^^
|
||||
note: opaque type being used as hidden type
|
||||
--> $DIR/two_tait_defining_each_other3.rs:6:10
|
||||
--> $DIR/two_tait_defining_each_other3.rs:7:10
|
||||
|
|
||||
LL | type A = impl Foo;
|
||||
| ^^^^^^^^
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@[next] check-pass
|
||||
#![feature(type_alias_impl_trait)]
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ check-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![allow(non_upper_case_globals)]
|
||||
|
@ -1,6 +1,7 @@
|
||||
//@ check-pass
|
||||
//@ pretty-expanded FIXME #23616
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
use std::slice;
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ run-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
use std::ops::Index;
|
||||
|
@ -1,5 +1,5 @@
|
||||
warning: the feature `lazy_type_alias` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/coerce-behind-lazy.rs:5:12
|
||||
--> $DIR/coerce-behind-lazy.rs:6:12
|
||||
|
|
||||
LL | #![feature(lazy_type_alias)]
|
||||
| ^^^^^^^^^^^^^^^
|
||||
|
@ -1,5 +1,5 @@
|
||||
warning: the feature `lazy_type_alias` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/coerce-behind-lazy.rs:5:12
|
||||
--> $DIR/coerce-behind-lazy.rs:6:12
|
||||
|
|
||||
LL | #![feature(lazy_type_alias)]
|
||||
| ^^^^^^^^^^^^^^^
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ check-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(lazy_type_alias)]
|
||||
|
@ -0,0 +1,43 @@
|
||||
error[E0275]: overflow normalizing the type alias `Loop`
|
||||
--> $DIR/inherent-impls-overflow.rs:8:13
|
||||
|
|
||||
LL | type Loop = Loop;
|
||||
| ^^^^
|
||||
|
|
||||
= note: in case this is a recursive type alias, consider using a struct, enum, or union instead
|
||||
|
||||
error[E0275]: overflow normalizing the type alias `Loop`
|
||||
--> $DIR/inherent-impls-overflow.rs:10:1
|
||||
|
|
||||
LL | impl Loop {}
|
||||
| ^^^^^^^^^^^^
|
||||
|
|
||||
= note: in case this is a recursive type alias, consider using a struct, enum, or union instead
|
||||
|
||||
error[E0275]: overflow normalizing the type alias `Poly0<(((((((...,),),),),),),)>`
|
||||
--> $DIR/inherent-impls-overflow.rs:14:17
|
||||
|
|
||||
LL | type Poly0<T> = Poly1<(T,)>;
|
||||
| ^^^^^^^^^^^
|
||||
|
|
||||
= note: in case this is a recursive type alias, consider using a struct, enum, or union instead
|
||||
|
||||
error[E0275]: overflow normalizing the type alias `Poly1<(((((((...,),),),),),),)>`
|
||||
--> $DIR/inherent-impls-overflow.rs:17:17
|
||||
|
|
||||
LL | type Poly1<T> = Poly0<(T,)>;
|
||||
| ^^^^^^^^^^^
|
||||
|
|
||||
= note: in case this is a recursive type alias, consider using a struct, enum, or union instead
|
||||
|
||||
error[E0275]: overflow normalizing the type alias `Poly1<(((((((...,),),),),),),)>`
|
||||
--> $DIR/inherent-impls-overflow.rs:21:1
|
||||
|
|
||||
LL | impl Poly0<()> {}
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: in case this is a recursive type alias, consider using a struct, enum, or union instead
|
||||
|
||||
error: aborting due to 5 previous errors
|
||||
|
||||
For more information about this error, try `rustc --explain E0275`.
|
@ -1,11 +1,11 @@
|
||||
error[E0275]: overflow evaluating the requirement `Loop == _`
|
||||
--> $DIR/inherent-impls-overflow.rs:9:6
|
||||
--> $DIR/inherent-impls-overflow.rs:10:6
|
||||
|
|
||||
LL | impl Loop {}
|
||||
| ^^^^
|
||||
|
||||
error[E0392]: type parameter `T` is never used
|
||||
--> $DIR/inherent-impls-overflow.rs:13:12
|
||||
--> $DIR/inherent-impls-overflow.rs:14:12
|
||||
|
|
||||
LL | type Poly0<T> = Poly1<(T,)>;
|
||||
| ^ unused type parameter
|
||||
@ -14,7 +14,7 @@ LL | type Poly0<T> = Poly1<(T,)>;
|
||||
= help: if you intended `T` to be a const parameter, use `const T: /* Type */` instead
|
||||
|
||||
error[E0392]: type parameter `T` is never used
|
||||
--> $DIR/inherent-impls-overflow.rs:16:12
|
||||
--> $DIR/inherent-impls-overflow.rs:17:12
|
||||
|
|
||||
LL | type Poly1<T> = Poly0<(T,)>;
|
||||
| ^ unused type parameter
|
||||
@ -23,7 +23,7 @@ LL | type Poly1<T> = Poly0<(T,)>;
|
||||
= help: if you intended `T` to be a const parameter, use `const T: /* Type */` instead
|
||||
|
||||
error[E0275]: overflow evaluating the requirement `Poly0<()> == _`
|
||||
--> $DIR/inherent-impls-overflow.rs:20:6
|
||||
--> $DIR/inherent-impls-overflow.rs:21:6
|
||||
|
|
||||
LL | impl Poly0<()> {}
|
||||
| ^^^^^^^^^
|
||||
|
@ -1,24 +1,25 @@
|
||||
//@ revisions: classic next
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(lazy_type_alias)]
|
||||
#![allow(incomplete_features)]
|
||||
|
||||
type Loop = Loop; //[classic]~ ERROR overflow normalizing the type alias `Loop`
|
||||
type Loop = Loop; //[current]~ ERROR overflow normalizing the type alias `Loop`
|
||||
|
||||
impl Loop {}
|
||||
//[classic]~^ ERROR overflow normalizing the type alias `Loop`
|
||||
//[current]~^ ERROR overflow normalizing the type alias `Loop`
|
||||
//[next]~^^ ERROR overflow evaluating the requirement `Loop == _`
|
||||
|
||||
type Poly0<T> = Poly1<(T,)>;
|
||||
//[classic]~^ ERROR overflow normalizing the type alias `Poly0<(((((((...,),),),),),),)>`
|
||||
//[current]~^ ERROR overflow normalizing the type alias `Poly0<(((((((...,),),),),),),)>`
|
||||
//[next]~^^ ERROR type parameter `T` is never used
|
||||
type Poly1<T> = Poly0<(T,)>;
|
||||
//[classic]~^ ERROR overflow normalizing the type alias `Poly1<(((((((...,),),),),),),)>`
|
||||
//[current]~^ ERROR overflow normalizing the type alias `Poly1<(((((((...,),),),),),),)>`
|
||||
//[next]~^^ ERROR type parameter `T` is never used
|
||||
|
||||
impl Poly0<()> {}
|
||||
//[classic]~^ ERROR overflow normalizing the type alias `Poly1<(((((((...,),),),),),),)>`
|
||||
//[current]~^ ERROR overflow normalizing the type alias `Poly1<(((((((...,),),),),),),)>`
|
||||
//[next]~^^ ERROR overflow evaluating the requirement `Poly0<()> == _`
|
||||
|
||||
fn main() {}
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0119]: conflicting implementations of trait `MyTrait` for type `MyFoo`
|
||||
--> $DIR/never-from-impl-is-reserved.rs:13:1
|
||||
--> $DIR/never-from-impl-is-reserved.rs:14:1
|
||||
|
|
||||
LL | impl MyTrait for MyFoo {}
|
||||
| ---------------------- first implementation here
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0119]: conflicting implementations of trait `MyTrait` for type `MyFoo`
|
||||
--> $DIR/never-from-impl-is-reserved.rs:13:1
|
||||
--> $DIR/never-from-impl-is-reserved.rs:14:1
|
||||
|
|
||||
LL | impl MyTrait for MyFoo {}
|
||||
| ---------------------- first implementation here
|
||||
|
@ -1,6 +1,7 @@
|
||||
// check that the `for<T> T: From<!>` impl is reserved
|
||||
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver=coherence
|
||||
|
||||
#![feature(never_type)]
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ check-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
use std::ops::Deref;
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ check-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
trait Foo {
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ run-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![allow(unused_must_use)]
|
||||
|
@ -1,5 +1,5 @@
|
||||
warning: methods `good_virt` and `good_indirect` are never used
|
||||
--> $DIR/manual-self-impl-for-unsafe-obj.rs:22:8
|
||||
--> $DIR/manual-self-impl-for-unsafe-obj.rs:23:8
|
||||
|
|
||||
LL | trait Good {
|
||||
| ---- methods in this trait
|
||||
|
@ -1,5 +1,5 @@
|
||||
warning: methods `good_virt` and `good_indirect` are never used
|
||||
--> $DIR/manual-self-impl-for-unsafe-obj.rs:22:8
|
||||
--> $DIR/manual-self-impl-for-unsafe-obj.rs:23:8
|
||||
|
|
||||
LL | trait Good {
|
||||
| ---- methods in this trait
|
||||
|
@ -1,6 +1,7 @@
|
||||
// Check that we can manually implement an object-unsafe trait for its trait object.
|
||||
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ run-pass
|
||||
|
||||
|
@ -1,16 +1,16 @@
|
||||
error[E0277]: the trait bound `dyn NotObject: NotObject` is not satisfied
|
||||
--> $DIR/deny-builtin-object-impl.rs:18:23
|
||||
--> $DIR/deny-builtin-object-impl.rs:19:23
|
||||
|
|
||||
LL | test_not_object::<dyn NotObject>();
|
||||
| ^^^^^^^^^^^^^ the trait `NotObject` is not implemented for `dyn NotObject`
|
||||
|
|
||||
help: this trait has no implementations, consider adding one
|
||||
--> $DIR/deny-builtin-object-impl.rs:10:1
|
||||
--> $DIR/deny-builtin-object-impl.rs:11:1
|
||||
|
|
||||
LL | trait NotObject {}
|
||||
| ^^^^^^^^^^^^^^^
|
||||
note: required by a bound in `test_not_object`
|
||||
--> $DIR/deny-builtin-object-impl.rs:14:23
|
||||
--> $DIR/deny-builtin-object-impl.rs:15:23
|
||||
|
|
||||
LL | fn test_not_object<T: NotObject + ?Sized>() {}
|
||||
| ^^^^^^^^^ required by this bound in `test_not_object`
|
||||
|
@ -1,16 +1,16 @@
|
||||
error[E0277]: the trait bound `dyn NotObject: NotObject` is not satisfied
|
||||
--> $DIR/deny-builtin-object-impl.rs:18:23
|
||||
--> $DIR/deny-builtin-object-impl.rs:19:23
|
||||
|
|
||||
LL | test_not_object::<dyn NotObject>();
|
||||
| ^^^^^^^^^^^^^ the trait `NotObject` is not implemented for `dyn NotObject`
|
||||
|
|
||||
help: this trait has no implementations, consider adding one
|
||||
--> $DIR/deny-builtin-object-impl.rs:10:1
|
||||
--> $DIR/deny-builtin-object-impl.rs:11:1
|
||||
|
|
||||
LL | trait NotObject {}
|
||||
| ^^^^^^^^^^^^^^^
|
||||
note: required by a bound in `test_not_object`
|
||||
--> $DIR/deny-builtin-object-impl.rs:14:23
|
||||
--> $DIR/deny-builtin-object-impl.rs:15:23
|
||||
|
|
||||
LL | fn test_not_object<T: NotObject + ?Sized>() {}
|
||||
| ^^^^^^^^^ required by this bound in `test_not_object`
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(rustc_attrs)]
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ run-pass
|
||||
//@ revisions: classic next
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
trait Foo: Fn(i32) -> i32 + Send {}
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ check-pass
|
||||
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: next current
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ check-pass
|
||||
|
||||
|
@ -1,23 +1,23 @@
|
||||
error[E0275]: overflow evaluating the requirement `<T as Trait>::Assoc: Trait`
|
||||
--> $DIR/normalize-param-env-4.rs:18:26
|
||||
--> $DIR/normalize-param-env-4.rs:19:26
|
||||
|
|
||||
LL | <T as Trait>::Assoc: Trait,
|
||||
| ^^^^^
|
||||
|
||||
error[E0275]: overflow evaluating the requirement `<T as Trait>::Assoc well-formed`
|
||||
--> $DIR/normalize-param-env-4.rs:18:26
|
||||
--> $DIR/normalize-param-env-4.rs:19:26
|
||||
|
|
||||
LL | <T as Trait>::Assoc: Trait,
|
||||
| ^^^^^
|
||||
|
||||
error[E0275]: overflow evaluating the requirement `T: Trait`
|
||||
--> $DIR/normalize-param-env-4.rs:31:19
|
||||
--> $DIR/normalize-param-env-4.rs:32:19
|
||||
|
|
||||
LL | impls_trait::<T>();
|
||||
| ^
|
||||
|
|
||||
note: required by a bound in `impls_trait`
|
||||
--> $DIR/normalize-param-env-4.rs:14:19
|
||||
--> $DIR/normalize-param-env-4.rs:15:19
|
||||
|
|
||||
LL | fn impls_trait<T: Trait>() {}
|
||||
| ^^^^^ required by this bound in `impls_trait`
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@[next] known-bug: #92505
|
||||
//@[current] check-pass
|
||||
|
@ -1,5 +1,5 @@
|
||||
warning: the feature `non_lifetime_binders` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/non-lifetime-via-dyn-builtin.rs:5:12
|
||||
--> $DIR/non-lifetime-via-dyn-builtin.rs:6:12
|
||||
|
|
||||
LL | #![feature(non_lifetime_binders)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -1,5 +1,5 @@
|
||||
warning: the feature `non_lifetime_binders` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/non-lifetime-via-dyn-builtin.rs:5:12
|
||||
--> $DIR/non-lifetime-via-dyn-builtin.rs:6:12
|
||||
|
|
||||
LL | #![feature(non_lifetime_binders)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ check-pass
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
warning: the feature `non_lifetime_binders` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/unifying-placeholders-in-query-response-2.rs:5:12
|
||||
--> $DIR/unifying-placeholders-in-query-response-2.rs:6:12
|
||||
|
|
||||
LL | #![feature(non_lifetime_binders)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -1,5 +1,5 @@
|
||||
warning: the feature `non_lifetime_binders` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/unifying-placeholders-in-query-response-2.rs:5:12
|
||||
--> $DIR/unifying-placeholders-in-query-response-2.rs:6:12
|
||||
|
|
||||
LL | #![feature(non_lifetime_binders)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ check-pass
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
warning: the feature `non_lifetime_binders` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/unifying-placeholders-in-query-response.rs:5:12
|
||||
--> $DIR/unifying-placeholders-in-query-response.rs:6:12
|
||||
|
|
||||
LL | #![feature(non_lifetime_binders)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -1,5 +1,5 @@
|
||||
warning: the feature `non_lifetime_binders` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/unifying-placeholders-in-query-response.rs:5:12
|
||||
--> $DIR/unifying-placeholders-in-query-response.rs:6:12
|
||||
|
|
||||
LL | #![feature(non_lifetime_binders)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ check-pass
|
||||
|
||||
|
@ -1,5 +1,6 @@
|
||||
//@ check-pass
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(trait_upcasting)]
|
||||
|
@ -1,6 +1,7 @@
|
||||
//@ check-pass
|
||||
// issue: 114035
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(trait_upcasting)]
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/illegal-upcast-from-impl.rs:16:66
|
||||
--> $DIR/illegal-upcast-from-impl.rs:17:66
|
||||
|
|
||||
LL | fn illegal(x: &dyn Sub<Assoc = ()>) -> &dyn Super<Assoc = i32> { x }
|
||||
| ----------------------- ^ expected trait `Super`, found trait `Sub`
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/illegal-upcast-from-impl.rs:16:66
|
||||
--> $DIR/illegal-upcast-from-impl.rs:17:66
|
||||
|
|
||||
LL | fn illegal(x: &dyn Sub<Assoc = ()>) -> &dyn Super<Assoc = i32> { x }
|
||||
| ----------------------- ^ expected trait `Super`, found trait `Sub`
|
||||
|
@ -1,4 +1,5 @@
|
||||
//@ revisions: current next
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(trait_upcasting)]
|
||||
|
@ -1,5 +1,5 @@
|
||||
error[E0658]: cannot cast `dyn Fn()` to `dyn FnMut()`, trait upcasting coercion is experimental
|
||||
--> $DIR/issue-11515.rs:10:38
|
||||
--> $DIR/issue-11515.rs:11:38
|
||||
|
|
||||
LL | let test = Box::new(Test { func: closure });
|
||||
| ^^^^^^^
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user