diff options
| author | Mazdak Farrokhzad <twingoow@gmail.com> | 2019-11-20 18:32:04 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-11-20 18:32:04 +0100 |
| commit | e32397a75404d3e23701a727ebba753e391c1471 (patch) | |
| tree | e0b1b353d1b6e6d185d96780fc85e92725ab8b57 /src/test | |
| parent | b9cf5417892ef242c783ef963deff5436205b0f6 (diff) | |
| parent | e01d9415e26dfcdd31c182bec21049502f5477ff (diff) | |
| download | rust-e32397a75404d3e23701a727ebba753e391c1471.tar.gz rust-e32397a75404d3e23701a727ebba753e391c1471.zip | |
Rollup merge of #66060 - traxys:test_65401, r=michaelwoerister
Making ICEs and test them in incremental This adds: - A way to make the compiler ICE - A way to check for ICE in `cfail` tests with `should-ice` - A regression test for issue #65401 I am not sure the attribute added `should-ice` is the best for this job
Diffstat (limited to 'src/test')
25 files changed, 37 insertions, 29 deletions
diff --git a/src/test/incremental/delayed_span_bug.rs b/src/test/incremental/delayed_span_bug.rs new file mode 100644 index 00000000000..2529e531e30 --- /dev/null +++ b/src/test/incremental/delayed_span_bug.rs @@ -0,0 +1,8 @@ +// revisions: cfail1 cfail2 +// should-ice +// error-pattern: delayed span bug triggered by #[rustc_error(delay_span_bug_from_inside_query)] + +#![feature(rustc_attrs)] + +#[rustc_error(delay_span_bug_from_inside_query)] +fn main() {} diff --git a/src/test/ui/associated-types/bound-lifetime-constrained.rs b/src/test/ui/associated-types/bound-lifetime-constrained.rs index fb82b3fa666..4e6754c865d 100644 --- a/src/test/ui/associated-types/bound-lifetime-constrained.rs +++ b/src/test/ui/associated-types/bound-lifetime-constrained.rs @@ -45,4 +45,4 @@ fn clause2<T>() where T: for<'a> Fn() -> <() as Foo<'a>>::Item { } #[rustc_error] -fn main() { } //[ok]~ ERROR compilation successful +fn main() { } //[ok]~ ERROR fatal error triggered by #[rustc_error] diff --git a/src/test/ui/associated-types/bound-lifetime-in-binding-only.ok.stderr b/src/test/ui/associated-types/bound-lifetime-in-binding-only.ok.stderr index fcdb371a6e5..5ece425196c 100644 --- a/src/test/ui/associated-types/bound-lifetime-in-binding-only.ok.stderr +++ b/src/test/ui/associated-types/bound-lifetime-in-binding-only.ok.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/bound-lifetime-in-binding-only.rs:71:1 | LL | fn main() { } diff --git a/src/test/ui/associated-types/bound-lifetime-in-binding-only.rs b/src/test/ui/associated-types/bound-lifetime-in-binding-only.rs index 843f5f06195..e714457ef7b 100644 --- a/src/test/ui/associated-types/bound-lifetime-in-binding-only.rs +++ b/src/test/ui/associated-types/bound-lifetime-in-binding-only.rs @@ -68,4 +68,4 @@ fn ok3<T>() where for<'a> Parameterized<'a>: Foo<Item=&'a i32> { } #[rustc_error] -fn main() { } //[ok]~ ERROR compilation successful +fn main() { } //[ok]~ ERROR fatal error triggered by #[rustc_error] diff --git a/src/test/ui/associated-types/bound-lifetime-in-return-only.ok.stderr b/src/test/ui/associated-types/bound-lifetime-in-return-only.ok.stderr index 504d68e66e2..8c098098311 100644 --- a/src/test/ui/associated-types/bound-lifetime-in-return-only.ok.stderr +++ b/src/test/ui/associated-types/bound-lifetime-in-return-only.ok.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/bound-lifetime-in-return-only.rs:49:1 | LL | fn main() { } diff --git a/src/test/ui/associated-types/bound-lifetime-in-return-only.rs b/src/test/ui/associated-types/bound-lifetime-in-return-only.rs index 9c0dc61494d..a60ccb6c4b2 100644 --- a/src/test/ui/associated-types/bound-lifetime-in-return-only.rs +++ b/src/test/ui/associated-types/bound-lifetime-in-return-only.rs @@ -46,4 +46,4 @@ fn ok2(_: &dyn for<'a,'b> Fn<(&'b Parameterized<'a>,), Output=&'a i32>) { } #[rustc_error] -fn main() { } //[ok]~ ERROR compilation successful +fn main() { } //[ok]~ ERROR fatal error triggered by #[rustc_error] diff --git a/src/test/ui/associated-types/cache/project-fn-ret-contravariant.ok.stderr b/src/test/ui/associated-types/cache/project-fn-ret-contravariant.ok.stderr index 15bbea671c5..baa8e6f82f6 100644 --- a/src/test/ui/associated-types/cache/project-fn-ret-contravariant.ok.stderr +++ b/src/test/ui/associated-types/cache/project-fn-ret-contravariant.ok.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/project-fn-ret-contravariant.rs:50:1 | LL | fn main() { } diff --git a/src/test/ui/associated-types/cache/project-fn-ret-contravariant.oneuse.stderr b/src/test/ui/associated-types/cache/project-fn-ret-contravariant.oneuse.stderr index 15bbea671c5..baa8e6f82f6 100644 --- a/src/test/ui/associated-types/cache/project-fn-ret-contravariant.oneuse.stderr +++ b/src/test/ui/associated-types/cache/project-fn-ret-contravariant.oneuse.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/project-fn-ret-contravariant.rs:50:1 | LL | fn main() { } diff --git a/src/test/ui/associated-types/cache/project-fn-ret-contravariant.rs b/src/test/ui/associated-types/cache/project-fn-ret-contravariant.rs index d953325df23..ebf52918153 100644 --- a/src/test/ui/associated-types/cache/project-fn-ret-contravariant.rs +++ b/src/test/ui/associated-types/cache/project-fn-ret-contravariant.rs @@ -48,5 +48,5 @@ fn transmute<'a,'b>(x: &'a u32, y: &'b u32) -> (&'a u32, &'b u32) { #[rustc_error] fn main() { } -//[ok]~^ ERROR compilation successful -//[oneuse]~^^ ERROR compilation successful +//[ok]~^ ERROR fatal error triggered by #[rustc_error] +//[oneuse]~^^ ERROR fatal error triggered by #[rustc_error] diff --git a/src/test/ui/associated-types/cache/project-fn-ret-invariant.ok.stderr b/src/test/ui/associated-types/cache/project-fn-ret-invariant.ok.stderr index 8110ed40cfe..8f445acf2b9 100644 --- a/src/test/ui/associated-types/cache/project-fn-ret-invariant.ok.stderr +++ b/src/test/ui/associated-types/cache/project-fn-ret-invariant.ok.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/project-fn-ret-invariant.rs:59:1 | LL | fn main() { } diff --git a/src/test/ui/associated-types/cache/project-fn-ret-invariant.rs b/src/test/ui/associated-types/cache/project-fn-ret-invariant.rs index 54b6e3642c2..23d873212ed 100644 --- a/src/test/ui/associated-types/cache/project-fn-ret-invariant.rs +++ b/src/test/ui/associated-types/cache/project-fn-ret-invariant.rs @@ -57,4 +57,4 @@ fn transmute<'a,'b>(x: Type<'a>, y: Type<'b>) -> (Type<'a>, Type<'b>) { #[rustc_error] fn main() { } -//[ok]~^ ERROR compilation successful +//[ok]~^ ERROR fatal error triggered by #[rustc_error] diff --git a/src/test/ui/associated-types/higher-ranked-projection.good.stderr b/src/test/ui/associated-types/higher-ranked-projection.good.stderr index 16fef0510f8..63d88543607 100644 --- a/src/test/ui/associated-types/higher-ranked-projection.good.stderr +++ b/src/test/ui/associated-types/higher-ranked-projection.good.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/higher-ranked-projection.rs:24:1 | LL | / fn main() { diff --git a/src/test/ui/associated-types/higher-ranked-projection.rs b/src/test/ui/associated-types/higher-ranked-projection.rs index a2ea6d8f206..5315e21b0f5 100644 --- a/src/test/ui/associated-types/higher-ranked-projection.rs +++ b/src/test/ui/associated-types/higher-ranked-projection.rs @@ -21,7 +21,7 @@ fn foo<U, T>(_t: T) {} #[rustc_error] -fn main() { //[good]~ ERROR compilation successful +fn main() { //[good]~ ERROR fatal error triggered by #[rustc_error] foo(()); //[bad]~^ ERROR type mismatch } diff --git a/src/test/ui/hr-subtype/hr-subtype.bound_a_vs_bound_a.stderr b/src/test/ui/hr-subtype/hr-subtype.bound_a_vs_bound_a.stderr index 9ec36f4c142..6aba6466fad 100644 --- a/src/test/ui/hr-subtype/hr-subtype.bound_a_vs_bound_a.stderr +++ b/src/test/ui/hr-subtype/hr-subtype.bound_a_vs_bound_a.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/hr-subtype.rs:100:1 | LL | / fn main() { diff --git a/src/test/ui/hr-subtype/hr-subtype.bound_a_vs_bound_b.stderr b/src/test/ui/hr-subtype/hr-subtype.bound_a_vs_bound_b.stderr index 9ec36f4c142..6aba6466fad 100644 --- a/src/test/ui/hr-subtype/hr-subtype.bound_a_vs_bound_b.stderr +++ b/src/test/ui/hr-subtype/hr-subtype.bound_a_vs_bound_b.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/hr-subtype.rs:100:1 | LL | / fn main() { diff --git a/src/test/ui/hr-subtype/hr-subtype.bound_co_a_vs_bound_co_b.stderr b/src/test/ui/hr-subtype/hr-subtype.bound_co_a_vs_bound_co_b.stderr index 9ec36f4c142..6aba6466fad 100644 --- a/src/test/ui/hr-subtype/hr-subtype.bound_co_a_vs_bound_co_b.stderr +++ b/src/test/ui/hr-subtype/hr-subtype.bound_co_a_vs_bound_co_b.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/hr-subtype.rs:100:1 | LL | / fn main() { diff --git a/src/test/ui/hr-subtype/hr-subtype.bound_inv_a_vs_bound_inv_b.stderr b/src/test/ui/hr-subtype/hr-subtype.bound_inv_a_vs_bound_inv_b.stderr index 9ec36f4c142..6aba6466fad 100644 --- a/src/test/ui/hr-subtype/hr-subtype.bound_inv_a_vs_bound_inv_b.stderr +++ b/src/test/ui/hr-subtype/hr-subtype.bound_inv_a_vs_bound_inv_b.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/hr-subtype.rs:100:1 | LL | / fn main() { diff --git a/src/test/ui/hr-subtype/hr-subtype.free_x_vs_free_x.stderr b/src/test/ui/hr-subtype/hr-subtype.free_x_vs_free_x.stderr index 9ec36f4c142..6aba6466fad 100644 --- a/src/test/ui/hr-subtype/hr-subtype.free_x_vs_free_x.stderr +++ b/src/test/ui/hr-subtype/hr-subtype.free_x_vs_free_x.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/hr-subtype.rs:100:1 | LL | / fn main() { diff --git a/src/test/ui/hr-subtype/hr-subtype.rs b/src/test/ui/hr-subtype/hr-subtype.rs index 2f7c1e6fd8c..b31f198bd97 100644 --- a/src/test/ui/hr-subtype/hr-subtype.rs +++ b/src/test/ui/hr-subtype/hr-subtype.rs @@ -98,9 +98,9 @@ check! { bound_a_b_ret_a_vs_bound_a_ret_a: (for<'a,'b> fn(&'a u32, &'b u32) -> & #[rustc_error] fn main() { -//[bound_a_vs_bound_a]~^ ERROR compilation successful -//[bound_a_vs_bound_b]~^^ ERROR compilation successful -//[bound_inv_a_vs_bound_inv_b]~^^^ ERROR compilation successful -//[bound_co_a_vs_bound_co_b]~^^^^ ERROR compilation successful -//[free_x_vs_free_x]~^^^^^ ERROR compilation successful +//[bound_a_vs_bound_a]~^ ERROR fatal error triggered by #[rustc_error] +//[bound_a_vs_bound_b]~^^ ERROR fatal error triggered by #[rustc_error] +//[bound_inv_a_vs_bound_inv_b]~^^^ ERROR fatal error triggered by #[rustc_error] +//[bound_co_a_vs_bound_co_b]~^^^^ ERROR fatal error triggered by #[rustc_error] +//[free_x_vs_free_x]~^^^^^ ERROR fatal error triggered by #[rustc_error] } diff --git a/src/test/ui/proc-macro/no-macro-use-attr.rs b/src/test/ui/proc-macro/no-macro-use-attr.rs index 15ab431fe75..a8a8fa4e19a 100644 --- a/src/test/ui/proc-macro/no-macro-use-attr.rs +++ b/src/test/ui/proc-macro/no-macro-use-attr.rs @@ -7,4 +7,4 @@ extern crate test_macros; //~^ WARN unused extern crate #[rustc_error] -fn main() {} //~ ERROR compilation successful +fn main() {} //~ ERROR fatal error triggered by #[rustc_error] diff --git a/src/test/ui/proc-macro/no-macro-use-attr.stderr b/src/test/ui/proc-macro/no-macro-use-attr.stderr index 87487bcc7d6..50552ea7dbb 100644 --- a/src/test/ui/proc-macro/no-macro-use-attr.stderr +++ b/src/test/ui/proc-macro/no-macro-use-attr.stderr @@ -10,7 +10,7 @@ note: lint level defined here LL | #![warn(unused_extern_crates)] | ^^^^^^^^^^^^^^^^^^^^ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/no-macro-use-attr.rs:10:1 | LL | fn main() {} diff --git a/src/test/ui/rfc1445/feature-gate.rs b/src/test/ui/rfc1445/feature-gate.rs index 38d6406efa5..21addfab8f5 100644 --- a/src/test/ui/rfc1445/feature-gate.rs +++ b/src/test/ui/rfc1445/feature-gate.rs @@ -18,7 +18,7 @@ struct Foo { const FOO: Foo = Foo { x: 0 }; #[rustc_error] -fn main() { //[with_gate]~ ERROR compilation successful +fn main() { //[with_gate]~ ERROR fatal error triggered by #[rustc_error] let y = Foo { x: 1 }; match y { FOO => { } diff --git a/src/test/ui/rfc1445/feature-gate.with_gate.stderr b/src/test/ui/rfc1445/feature-gate.with_gate.stderr index ca8dc75c533..fabbfd5c70b 100644 --- a/src/test/ui/rfc1445/feature-gate.with_gate.stderr +++ b/src/test/ui/rfc1445/feature-gate.with_gate.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/feature-gate.rs:21:1 | LL | / fn main() { diff --git a/src/test/ui/rustc-error.rs b/src/test/ui/rustc-error.rs index 0504198032c..69d57948fb5 100644 --- a/src/test/ui/rustc-error.rs +++ b/src/test/ui/rustc-error.rs @@ -2,5 +2,5 @@ #[rustc_error] fn main() { - //~^ ERROR compilation successful + //~^ ERROR fatal error triggered by #[rustc_error] } diff --git a/src/test/ui/rustc-error.stderr b/src/test/ui/rustc-error.stderr index dcbc0e1feb2..7dfc4449295 100644 --- a/src/test/ui/rustc-error.stderr +++ b/src/test/ui/rustc-error.stderr @@ -1,4 +1,4 @@ -error: compilation successful +error: fatal error triggered by #[rustc_error] --> $DIR/rustc-error.rs:4:1 | LL | / fn main() { |
