mirror of
https://github.com/rust-lang/rust.git
synced 2026-04-27 18:57:42 +03:00
allow incomplete_features in all ui tests
This commit is contained in:
@@ -1921,10 +1921,7 @@ fn make_compile_args(
|
||||
|
||||
// Allow tests to use internal and incomplete features.
|
||||
compiler.args(&["-A", "internal_features"]);
|
||||
// FIXME(#154168); temporarily exclude some directories to make the transition easier
|
||||
if !input_file.iter().any(|p| p == "specialization") {
|
||||
compiler.args(&["-A", "incomplete_features"]);
|
||||
}
|
||||
compiler.args(&["-A", "incomplete_features"]);
|
||||
|
||||
// Allow tests to have unused parens and braces.
|
||||
// Add #![deny(unused_parens, unused_braces)] to the test file if you want to
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
// Make sure we don't crash with a cycle error during coherence.
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait Trait<T> {
|
||||
type Assoc;
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/assoc-ty-graph-cycle.rs:5:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// regression test for #118987
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait Assoc {
|
||||
type Output;
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/default-impl-normalization-ambig-2.rs:2:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0277]: the trait bound `u16: Assoc` is not satisfied
|
||||
--> $DIR/default-impl-normalization-ambig-2.rs:17:14
|
||||
|
|
||||
@@ -20,6 +10,6 @@ help: the trait `Assoc` is implemented for `u8`
|
||||
LL | impl Assoc for u8 {}
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0277`.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
// regression test for #73299.
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait X {
|
||||
type U;
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/default-item-normalization-ambig-1.rs:2:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0119]: conflicting implementations of trait `Y` for type `<() as X>::U`
|
||||
--> $DIR/default-item-normalization-ambig-1.rs:20:1
|
||||
|
|
||||
@@ -16,6 +6,6 @@ LL | impl Y for <() as X>::U {}
|
||||
LL | impl Y for <i32 as X>::U {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `<() as X>::U`
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0119`.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
//@ aux-build:cross_crates_defaults.rs
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
extern crate cross_crates_defaults;
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/cross-crate-defaults.rs:5:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
//! Regression test for revealing associated types through specialization during const eval.
|
||||
//@ check-pass
|
||||
#![feature(specialization)]
|
||||
//~^ WARNING the feature `specialization` is incomplete and may not be safe to use
|
||||
|
||||
trait Foo {
|
||||
const ASSOC: usize;
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/default-assoc-const.rs:3:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
//! even if they rely on specialization.
|
||||
//@ check-pass
|
||||
#![feature(specialization)]
|
||||
//~^ WARNING the feature `specialization` is incomplete and may not be safe to use
|
||||
|
||||
trait Foo {
|
||||
type Assoc: Trait;
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/default-assoc-type.rs:4:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// bounds on them.
|
||||
|
||||
#![feature(specialization)]
|
||||
//~^ WARNING `specialization` is incomplete
|
||||
|
||||
trait X {
|
||||
type U: Clone;
|
||||
|
||||
@@ -1,15 +1,5 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/default-associated-type-bound-1.rs:4:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0277]: the trait bound `str: Clone` is not satisfied
|
||||
--> $DIR/default-associated-type-bound-1.rs:18:22
|
||||
--> $DIR/default-associated-type-bound-1.rs:17:22
|
||||
|
|
||||
LL | default type U = str;
|
||||
| ^^^ the trait `Clone` is not implemented for `str`
|
||||
@@ -17,11 +7,11 @@ LL | default type U = str;
|
||||
help: the trait `Clone` is implemented for `String`
|
||||
--> $SRC_DIR/alloc/src/string.rs:LL:COL
|
||||
note: required by a bound in `X::U`
|
||||
--> $DIR/default-associated-type-bound-1.rs:8:13
|
||||
--> $DIR/default-associated-type-bound-1.rs:7:13
|
||||
|
|
||||
LL | type U: Clone;
|
||||
| ^^^^^ required by this bound in `X::U`
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0277`.
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
// Check that generic predicates are also checked for default associated types.
|
||||
#![feature(specialization)]
|
||||
//~^ WARNING `specialization` is incomplete
|
||||
|
||||
trait X<T> {
|
||||
type U: PartialEq<T>;
|
||||
|
||||
@@ -1,22 +1,12 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/default-associated-type-bound-2.rs:2:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0277]: can't compare `&'static B` with `B`
|
||||
--> $DIR/default-associated-type-bound-2.rs:16:22
|
||||
--> $DIR/default-associated-type-bound-2.rs:15:22
|
||||
|
|
||||
LL | default type U = &'static B;
|
||||
| ^^^^^^^^^^ no implementation for `&'static B == B`
|
||||
|
|
||||
= help: the trait `PartialEq<B>` is not implemented for `&'static B`
|
||||
note: required by a bound in `X::U`
|
||||
--> $DIR/default-associated-type-bound-2.rs:6:13
|
||||
--> $DIR/default-associated-type-bound-2.rs:5:13
|
||||
|
|
||||
LL | type U: PartialEq<T>;
|
||||
| ^^^^^^^^^^^^ required by this bound in `X::U`
|
||||
@@ -25,6 +15,6 @@ help: consider introducing a `where` clause, but there might be an alternative b
|
||||
LL | impl<B: 'static, T> X<B> for T where &'static B: PartialEq<B> {
|
||||
| ++++++++++++++++++++++++++++++
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0277`.
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
// Check that default generics associated types are validated.
|
||||
|
||||
#![feature(specialization)]
|
||||
//~^ WARNING `specialization` is incomplete
|
||||
|
||||
trait X {
|
||||
type U<'a>: PartialEq<&'a Self> where Self: 'a;
|
||||
|
||||
@@ -1,22 +1,12 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/default-generic-associated-type-bound.rs:3:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0277]: can't compare `T` with `T`
|
||||
--> $DIR/default-generic-associated-type-bound.rs:17:26
|
||||
--> $DIR/default-generic-associated-type-bound.rs:16:26
|
||||
|
|
||||
LL | default type U<'a> = &'a T;
|
||||
| ^^^^^ no implementation for `T == T`
|
||||
|
|
||||
= note: required for `&'a T` to implement `PartialEq`
|
||||
note: required by a bound in `X::U`
|
||||
--> $DIR/default-generic-associated-type-bound.rs:7:17
|
||||
--> $DIR/default-generic-associated-type-bound.rs:6:17
|
||||
|
|
||||
LL | type U<'a>: PartialEq<&'a Self> where Self: 'a;
|
||||
| ^^^^^^^^^^^^^^^^^^^ required by this bound in `X::U`
|
||||
@@ -25,6 +15,6 @@ help: consider further restricting type parameter `T` with trait `PartialEq`
|
||||
LL | impl<T: 'static + std::cmp::PartialEq> X for T {
|
||||
| +++++++++++++++++++++
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0277`.
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
//@ aux-build:go_trait.rs
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
extern crate go_trait;
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/allowed-cross-crate.rs:8:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
// Test that you can list the more specific impl before the more general one.
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait Foo {
|
||||
type Out;
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/out-of-order.rs:5:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
// projections involve specialization, so long as the associated type is
|
||||
// provided by the most specialized impl.
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait Assoc {
|
||||
type Output;
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/overlap-projection.rs:7:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//@ run-pass
|
||||
#![allow(dead_code)]
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
// Make sure we *can* project non-defaulted associated types
|
||||
// cf ui/specialization/specialization-default-projection.rs
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/projection.rs:4:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
// Check a number of scenarios in which one impl tries to override another,
|
||||
// without correctly using `default`.
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-no-default.rs:1:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0520]: `foo` specializes an item from a parent `impl`, but that item is not marked `default`
|
||||
--> $DIR/specialization-no-default.rs:20:5
|
||||
|
|
||||
@@ -63,6 +53,6 @@ LL | fn redundant(&self) {}
|
||||
|
|
||||
= note: to specialize, `redundant` in the parent `impl` must be marked `default`
|
||||
|
||||
error: aborting due to 5 previous errors; 1 warning emitted
|
||||
error: aborting due to 5 previous errors
|
||||
|
||||
For more information about this error, try `rustc --explain E0520`.
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@
|
||||
// Tests that we can combine a default impl that supplies one method with a
|
||||
// full impl that supplies the other, and they can invoke one another.
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait Foo {
|
||||
fn foo_one(&self) -> &'static str;
|
||||
|
||||
-12
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-trait-item-not-implemented-rpass.rs:6:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// Tests that default impls do not have to supply all items but regular impls do.
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait Foo {
|
||||
fn foo_one(&self) -> &'static str;
|
||||
|
||||
+1
-11
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-trait-item-not-implemented.rs:3:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0046]: not all trait items implemented, missing: `foo_two`
|
||||
--> $DIR/specialization-trait-item-not-implemented.rs:18:1
|
||||
|
|
||||
@@ -17,6 +7,6 @@ LL | fn foo_two(&self) -> &'static str;
|
||||
LL | impl Foo for MyStruct {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^ missing `foo_two` in implementation
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0046`.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
// - default impls do not have to supply all items and
|
||||
// - a default impl does not count as an impl (in this case, an incomplete default impl).
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait Foo {
|
||||
fn foo_one(&self) -> &'static str;
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-trait-not-implemented.rs:5:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0599]: no method named `foo_one` found for struct `MyStruct` in the current scope
|
||||
--> $DIR/specialization-trait-not-implemented.rs:22:29
|
||||
|
|
||||
@@ -24,6 +14,6 @@ note: `Foo` defines an item `foo_one`, perhaps you need to implement it
|
||||
LL | trait Foo {
|
||||
| ^^^^^^^^^
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0599`.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// Tests that a default impl still has to have a WF trait ref.
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait Foo<'a, T: Eq + 'a> { }
|
||||
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-wfcheck.rs:3:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0277]: the trait bound `U: Eq` is not satisfied
|
||||
--> $DIR/specialization-wfcheck.rs:7:17
|
||||
|
|
||||
@@ -24,6 +14,6 @@ help: consider restricting type parameter `U` with trait `Eq`
|
||||
LL | default impl<U: std::cmp::Eq> Foo<'static, U> for () {}
|
||||
| ++++++++++++++
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0277`.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#![feature(negative_impls)]
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
struct S;
|
||||
struct Z;
|
||||
|
||||
@@ -8,16 +8,6 @@ LL | default impl S {}
|
||||
|
|
||||
= note: only trait implementations may be annotated with `default`
|
||||
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/validation.rs:2:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0367]: `!Send` impl requires `Z: Send` but the struct it is implemented for does not
|
||||
--> $DIR/validation.rs:12:1
|
||||
|
|
||||
@@ -58,7 +48,7 @@ error[E0750]: negative impls cannot be default impls
|
||||
LL | default impl !Tr for S {}
|
||||
| ^^^^^^^ ^
|
||||
|
||||
error: aborting due to 6 previous errors; 1 warning emitted
|
||||
error: aborting due to 6 previous errors
|
||||
|
||||
Some errors have detailed explanations: E0367, E0750.
|
||||
For more information about an error, try `rustc --explain E0367`.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// This test previously tried to use a tainted `EvalCtxt` when emitting
|
||||
// an error during coherence.
|
||||
#![feature(specialization)]
|
||||
//~^ WARN the feature `specialization` is incomplete
|
||||
|
||||
trait Iterate<'a> {
|
||||
type Ty: Valid;
|
||||
}
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/fuzzing-ice-134905.rs:3:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0277]: the trait bound `(): Valid` is not satisfied
|
||||
--> $DIR/fuzzing-ice-134905.rs:12:23
|
||||
|
|
||||
@@ -34,7 +24,7 @@ LL | impl<'a, T> Eq for T where <T as Iterate<'a>>::Ty: Valid {}
|
||||
= note: implementing a foreign trait is only possible if at least one of the types for which it is implemented is local
|
||||
= note: only traits defined in the current crate can be implemented for a type parameter
|
||||
|
||||
error: aborting due to 2 previous errors; 1 warning emitted
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
Some errors have detailed explanations: E0210, E0277.
|
||||
For more information about an error, try `rustc --explain E0210`.
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
//@ check-pass
|
||||
#![feature(specialization)]
|
||||
//~^ WARN the feature `specialization` is incomplete
|
||||
|
||||
fn main() {}
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/issue-35376.rs:2:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
//@ check-pass
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
pub struct Cloned<I>(I);
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/issue-36804.rs:2:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
//~^ ERROR overflow evaluating the requirement `i32: Check`
|
||||
|
||||
#![feature(specialization)]
|
||||
//~^ WARN the feature `specialization` is incomplete
|
||||
|
||||
trait Iterate<'a> {
|
||||
type Ty: Valid;
|
||||
|
||||
@@ -1,17 +1,7 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/issue-38091-2.rs:4:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0275]: overflow evaluating the requirement `i32: Check`
|
||||
|
|
||||
note: required for `i32` to implement `Iterate<'_>`
|
||||
--> $DIR/issue-38091-2.rs:11:13
|
||||
--> $DIR/issue-38091-2.rs:10:13
|
||||
|
|
||||
LL | impl<'a, T> Iterate<'a> for T
|
||||
| ^^^^^^^^^^^ ^
|
||||
@@ -19,6 +9,6 @@ LL | where
|
||||
LL | T: Check,
|
||||
| ----- unsatisfied trait bound introduced here
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0275`.
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
#![feature(specialization)]
|
||||
//~^ WARN the feature `specialization` is incomplete
|
||||
|
||||
trait Iterate<'a> {
|
||||
type Ty: Valid;
|
||||
|
||||
@@ -1,30 +1,20 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/issue-38091.rs:1:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0277]: the trait bound `(): Valid` is not satisfied
|
||||
--> $DIR/issue-38091.rs:12:23
|
||||
--> $DIR/issue-38091.rs:11:23
|
||||
|
|
||||
LL | default type Ty = ();
|
||||
| ^^ the trait `Valid` is not implemented for `()`
|
||||
|
|
||||
help: this trait has no implementations, consider adding one
|
||||
--> $DIR/issue-38091.rs:20:1
|
||||
--> $DIR/issue-38091.rs:19:1
|
||||
|
|
||||
LL | trait Valid {}
|
||||
| ^^^^^^^^^^^
|
||||
note: required by a bound in `Iterate::Ty`
|
||||
--> $DIR/issue-38091.rs:5:14
|
||||
--> $DIR/issue-38091.rs:4:14
|
||||
|
|
||||
LL | type Ty: Valid;
|
||||
| ^^^^^ required by this bound in `Iterate::Ty`
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0277`.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
// Regression test for a specialization-related ICE (#39448).
|
||||
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/issue-39448.rs:1:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0391]: cycle detected when computing whether impls specialize one another
|
||||
--> $DIR/issue-39448.rs:24:1
|
||||
|
|
||||
@@ -23,6 +13,6 @@ LL | trait FromA<T> {
|
||||
| ^^^^^^^^^^^^^^
|
||||
= note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0391`.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
// FIXME(JohnTitor): Centril pointed out this looks suspicions, we should revisit here.
|
||||
// More context: https://github.com/rust-lang/rust/pull/69192#discussion_r379846796
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait Foo {
|
||||
fn foo(&self);
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/issue-39618.rs:5:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0391]: cycle detected when computing whether impls specialize one another
|
||||
--> $DIR/issue-39618.rs:19:1
|
||||
|
|
||||
@@ -23,6 +13,6 @@ LL | trait Foo {
|
||||
| ^^^^^^^^^
|
||||
= note: see https://rustc-dev-guide.rust-lang.org/overview.html#queries and https://rustc-dev-guide.rust-lang.org/query.html for more information
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0391`.
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
#![feature(specialization)]
|
||||
//~^ WARN the feature `specialization` is incomplete
|
||||
|
||||
pub trait Foo {
|
||||
fn foo();
|
||||
|
||||
@@ -1,15 +1,5 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/issue-50452-fail.rs:1:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0520]: `foo` specializes an item from a parent `impl`, but that item is not marked `default`
|
||||
--> $DIR/issue-50452-fail.rs:10:5
|
||||
--> $DIR/issue-50452-fail.rs:9:5
|
||||
|
|
||||
LL | fn foo() {}
|
||||
| ^^^^^^^^ cannot specialize default item `foo`
|
||||
@@ -19,6 +9,6 @@ LL | impl<T> Foo for T {
|
||||
|
|
||||
= note: to specialize, `foo` in the parent `impl` must be marked `default`
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0520`.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
//@ run-pass
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
pub trait Foo {
|
||||
fn foo();
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/issue-50452.rs:3:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
// Regression test for #52050: when inserting the blanket impl `I`
|
||||
// into the tree, we had to replace the child node for `Foo`, which
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/issue-52050.rs:1:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0119]: conflicting implementations of trait `IntoPyDictPointer` for type `()`
|
||||
--> $DIR/issue-52050.rs:28:1
|
||||
|
|
||||
@@ -21,6 +11,6 @@ LL | impl IntoPyDictPointer for ()
|
||||
|
|
||||
= note: upstream crates may add a new impl of trait `std::iter::Iterator` for type `()` in future versions
|
||||
|
||||
error: aborting due to 1 previous error; 1 warning emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0119`.
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
//@ check-pass
|
||||
//@ edition:2018
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
fn main() {}
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/issue-63716-parse-async.rs:7:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
//@ check-pass
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/issue-70442.rs:1:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
#![feature(specialization, associated_type_defaults)]
|
||||
//~^ WARN the feature `specialization` is incomplete
|
||||
|
||||
// Test that attempting to override a non-default method or one not in the
|
||||
// parent impl causes an error.
|
||||
|
||||
@@ -1,15 +1,5 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/non-defaulted-item-fail.rs:1:12
|
||||
|
|
||||
LL | #![feature(specialization, associated_type_defaults)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0520]: `Ty` specializes an item from a parent `impl`, but that item is not marked `default`
|
||||
--> $DIR/non-defaulted-item-fail.rs:30:5
|
||||
--> $DIR/non-defaulted-item-fail.rs:29:5
|
||||
|
|
||||
LL | impl<T> Foo for Box<T> {
|
||||
| ---------------------- parent `impl` is here
|
||||
@@ -20,7 +10,7 @@ LL | type Ty = Vec<()>;
|
||||
= note: to specialize, `Ty` in the parent `impl` must be marked `default`
|
||||
|
||||
error[E0520]: `CONST` specializes an item from a parent `impl`, but that item is not marked `default`
|
||||
--> $DIR/non-defaulted-item-fail.rs:32:5
|
||||
--> $DIR/non-defaulted-item-fail.rs:31:5
|
||||
|
|
||||
LL | impl<T> Foo for Box<T> {
|
||||
| ---------------------- parent `impl` is here
|
||||
@@ -31,7 +21,7 @@ LL | const CONST: u8 = 42;
|
||||
= note: to specialize, `CONST` in the parent `impl` must be marked `default`
|
||||
|
||||
error[E0520]: `foo` specializes an item from a parent `impl`, but that item is not marked `default`
|
||||
--> $DIR/non-defaulted-item-fail.rs:34:5
|
||||
--> $DIR/non-defaulted-item-fail.rs:33:5
|
||||
|
|
||||
LL | impl<T> Foo for Box<T> {
|
||||
| ---------------------- parent `impl` is here
|
||||
@@ -42,7 +32,7 @@ LL | fn foo(&self) -> bool { true }
|
||||
= note: to specialize, `foo` in the parent `impl` must be marked `default`
|
||||
|
||||
error[E0520]: `Ty` specializes an item from a parent `impl`, but that item is not marked `default`
|
||||
--> $DIR/non-defaulted-item-fail.rs:46:5
|
||||
--> $DIR/non-defaulted-item-fail.rs:45:5
|
||||
|
|
||||
LL | impl<T> Foo for Vec<T> {}
|
||||
| ---------------------- parent `impl` is here
|
||||
@@ -53,7 +43,7 @@ LL | type Ty = Vec<()>;
|
||||
= note: to specialize, `Ty` in the parent `impl` must be marked `default`
|
||||
|
||||
error[E0520]: `CONST` specializes an item from a parent `impl`, but that item is not marked `default`
|
||||
--> $DIR/non-defaulted-item-fail.rs:48:5
|
||||
--> $DIR/non-defaulted-item-fail.rs:47:5
|
||||
|
|
||||
LL | impl<T> Foo for Vec<T> {}
|
||||
| ---------------------- parent `impl` is here
|
||||
@@ -64,7 +54,7 @@ LL | const CONST: u8 = 42;
|
||||
= note: to specialize, `CONST` in the parent `impl` must be marked `default`
|
||||
|
||||
error[E0520]: `foo` specializes an item from a parent `impl`, but that item is not marked `default`
|
||||
--> $DIR/non-defaulted-item-fail.rs:50:5
|
||||
--> $DIR/non-defaulted-item-fail.rs:49:5
|
||||
|
|
||||
LL | impl<T> Foo for Vec<T> {}
|
||||
| ---------------------- parent `impl` is here
|
||||
@@ -74,6 +64,6 @@ LL | fn foo(&self) -> bool { true }
|
||||
|
|
||||
= note: to specialize, `foo` in the parent `impl` must be marked `default`
|
||||
|
||||
error: aborting due to 6 previous errors; 1 warning emitted
|
||||
error: aborting due to 6 previous errors
|
||||
|
||||
For more information about this error, try `rustc --explain E0520`.
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
// Regression test for #140571. The compiler used to ICE
|
||||
|
||||
#![feature(min_generic_const_args, specialization)]
|
||||
//~^ WARN the feature `specialization` is incomplete
|
||||
//~| WARN the feature `min_generic_const_args` is incomplete
|
||||
|
||||
pub trait IsVoid {
|
||||
|
||||
|
||||
@@ -1,29 +1,11 @@
|
||||
warning: the feature `min_generic_const_args` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/overlap-due-to-unsatisfied-const-bound.rs:3:12
|
||||
|
|
||||
LL | #![feature(min_generic_const_args, specialization)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #132980 <https://github.com/rust-lang/rust/issues/132980> for more information
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/overlap-due-to-unsatisfied-const-bound.rs:3:36
|
||||
|
|
||||
LL | #![feature(min_generic_const_args, specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
|
||||
error[E0119]: conflicting implementations of trait `Maybe<()>` for type `()`
|
||||
--> $DIR/overlap-due-to-unsatisfied-const-bound.rs:20:1
|
||||
--> $DIR/overlap-due-to-unsatisfied-const-bound.rs:18:1
|
||||
|
|
||||
LL | impl<T> Maybe<T> for T {}
|
||||
| ---------------------- first implementation here
|
||||
LL | impl<T> Maybe<T> for () where T: NotVoid + ?Sized {}
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ conflicting implementation for `()`
|
||||
|
||||
error: aborting due to 1 previous error; 2 warnings emitted
|
||||
error: aborting due to 1 previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0119`.
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/prefer-specializing-impl-over-default.rs:5:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/prefer-specializing-impl-over-default.rs:5:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
//@ check-pass
|
||||
#![feature(specialization)]
|
||||
//~^ WARN the feature `specialization` is incomplete
|
||||
|
||||
trait WithAssoc: 'static {
|
||||
type Assoc;
|
||||
|
||||
-12
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/source-impl-requires-constraining-predicates-ambig.rs:14:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -12,7 +12,6 @@
|
||||
// is ambiguous.
|
||||
|
||||
#![feature(specialization)]
|
||||
//[next]~^ WARN the feature `specialization` is incomplete
|
||||
|
||||
trait Spec {
|
||||
type Assoc;
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/source-impl-requires-constraining-predicates.rs:9:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/source-impl-requires-constraining-predicates.rs:9:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
// `[u32; 0]: IntoIterator<Item = ?U>` predicate to constrain the `?U` impl arg.
|
||||
|
||||
#![feature(specialization)]
|
||||
//~^ WARN the feature `specialization` is incomplete
|
||||
|
||||
trait Spec {
|
||||
type Assoc;
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
//@ aux-build:go_trait.rs
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
extern crate go_trait;
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-allowed-cross-crate.rs:8:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
// Test that non-method associated functions can be specialized
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait Foo {
|
||||
fn mk() -> Self;
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-assoc-fns.rs:5:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
//@ run-pass
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
// Tests a variety of basic specialization scenarios and method
|
||||
// dispatch for them.
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-basics.rs:3:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
//@ aux-build:specialization_cross_crate.rs
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
extern crate specialization_cross_crate;
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-cross-crate.rs:5:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
//@ run-pass
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
// Test that default methods are cascaded correctly
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-default-methods.rs:3:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-default-projection.rs:5:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/specialization-default-projection.rs:25:5
|
||||
|
|
||||
@@ -42,6 +32,6 @@ LL | generic::<()>()
|
||||
= note: the associated type `<() as Foo>::Assoc` is defined as `()` in the implementation, but the where-bound `()` shadows this definition
|
||||
see issue #152409 <https://github.com/rust-lang/rust/issues/152409> for more information
|
||||
|
||||
error: aborting due to 2 previous errors; 1 warning emitted
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
For more information about this error, try `rustc --explain E0308`.
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-default-projection.rs:5:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/specialization-default-projection.rs:25:5
|
||||
|
|
||||
@@ -42,6 +32,6 @@ LL | generic::<()>()
|
||||
= note: the associated type `<() as Foo>::Assoc` is defined as `()` in the implementation, but the where-bound `()` shadows this definition
|
||||
see issue #152409 <https://github.com/rust-lang/rust/issues/152409> for more information
|
||||
|
||||
error: aborting due to 2 previous errors; 1 warning emitted
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
For more information about this error, try `rustc --explain E0308`.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
//@ ignore-compare-mode-next-solver (explicit revisions)
|
||||
//@[next] compile-flags: -Znext-solver
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
// Make sure we can't project defaulted associated types
|
||||
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-default-types.rs:9:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/specialization-default-types.rs:19:9
|
||||
|
|
||||
@@ -38,6 +28,6 @@ LL | Example::generate(t)
|
||||
= note: the associated type `<T as Example>::Output` is defined as `Box<T>` in the implementation, but the where-bound `T` shadows this definition
|
||||
see issue #152409 <https://github.com/rust-lang/rust/issues/152409> for more information
|
||||
|
||||
error: aborting due to 2 previous errors; 1 warning emitted
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
For more information about this error, try `rustc --explain E0308`.
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-default-types.rs:9:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/specialization-default-types.rs:19:9
|
||||
|
|
||||
@@ -38,6 +28,6 @@ LL | Example::generate(t)
|
||||
= note: the associated type `<T as Example>::Output` is defined as `Box<T>` in the implementation, but the where-bound `T` shadows this definition
|
||||
see issue #152409 <https://github.com/rust-lang/rust/issues/152409> for more information
|
||||
|
||||
error: aborting due to 2 previous errors; 1 warning emitted
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
For more information about this error, try `rustc --explain E0308`.
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
// associated type in the impl defining it -- otherwise, what happens
|
||||
// if it's overridden?
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait Example {
|
||||
type Output;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
// Check a number of scenarios in which one impl tries to override another,
|
||||
// without correctly using `default`.
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-no-default.rs:1:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0520]: `foo` specializes an item from a parent `impl`, but that item is not marked `default`
|
||||
--> $DIR/specialization-no-default.rs:20:5
|
||||
|
|
||||
@@ -63,6 +53,6 @@ LL | default fn redundant(&self) {}
|
||||
|
|
||||
= note: to specialize, `redundant` in the parent `impl` must be marked `default`
|
||||
|
||||
error: aborting due to 5 previous errors; 1 warning emitted
|
||||
error: aborting due to 5 previous errors
|
||||
|
||||
For more information about this error, try `rustc --explain E0520`.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
//@ run-pass
|
||||
#![allow(dead_code)]
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
// Ensure that specialization works for impls defined directly on a projection
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-on-projection.rs:4:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
// Test that you can list the more specific impl before the more general one.
|
||||
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait Foo {
|
||||
type Out;
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-out-of-order.rs:5:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
warning: 1 warning emitted
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#![feature(negative_impls)]
|
||||
#![feature(specialization)] //~ WARN the feature `specialization` is incomplete
|
||||
#![feature(specialization)]
|
||||
|
||||
trait MyTrait {}
|
||||
|
||||
|
||||
@@ -1,13 +1,3 @@
|
||||
warning: the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
--> $DIR/specialization-overlap-negative.rs:2:12
|
||||
|
|
||||
LL | #![feature(specialization)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
|
||||
= help: consider using `min_specialization` instead, which is more stable and complete
|
||||
= note: `#[warn(incomplete_features)]` on by default
|
||||
|
||||
error[E0751]: found both positive and negative implementation of trait `Send` for type `TestType<_>`:
|
||||
--> $DIR/specialization-overlap-negative.rs:9:1
|
||||
|
|
||||
@@ -28,7 +18,7 @@ note: the implementor must specify the same requirement
|
||||
LL | struct TestType<T>(::std::marker::PhantomData<T>);
|
||||
| ^^^^^^^^^^^^^^^^^^
|
||||
|
||||
error: aborting due to 2 previous errors; 1 warning emitted
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
Some errors have detailed explanations: E0367, E0751.
|
||||
For more information about an error, try `rustc --explain E0367`.
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
// projections involve specialization, so long as the associated type is
|
||||
// provided by the most specialized impl.
|
||||
#![feature(specialization)]
|
||||
//~^ WARN the feature `specialization` is incomplete and may not be safe to use and/or cause compiler crashes
|
||||
|
||||
trait Assoc {
|
||||
type Output;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user