summaryrefslogtreecommitdiffstats
path: root/src/test/incremental
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-17 12:19:13 +0000
commit218caa410aa38c29984be31a5229b9fa717560ee (patch)
treec54bd55eeb6e4c508940a30e94c0032fbd45d677 /src/test/incremental
parentReleasing progress-linux version 1.67.1+dfsg1-1~progress7.99u1. (diff)
downloadrustc-218caa410aa38c29984be31a5229b9fa717560ee.tar.xz
rustc-218caa410aa38c29984be31a5229b9fa717560ee.zip
Merging upstream version 1.68.2+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/test/incremental')
-rw-r--r--src/test/incremental/add_private_fn_at_krate_root_cc/auxiliary/point.rs18
-rw-r--r--src/test/incremental/add_private_fn_at_krate_root_cc/struct_point.rs73
-rw-r--r--src/test/incremental/async-lifetimes.rs19
-rw-r--r--src/test/incremental/auxiliary/incremental_proc_macro_aux.rs22
-rw-r--r--src/test/incremental/auxiliary/issue-49482-macro-def.rs40
-rw-r--r--src/test/incremental/auxiliary/issue-49482-reexport.rs6
-rw-r--r--src/test/incremental/auxiliary/issue-54059.rs50
-rw-r--r--src/test/incremental/auxiliary/issue-79661.rs6
-rw-r--r--src/test/incremental/auxiliary/issue-79890.rs1
-rw-r--r--src/test/incremental/auxiliary/rustc-rust-log-aux.rs8
-rw-r--r--src/test/incremental/cache_file_headers.rs20
-rw-r--r--src/test/incremental/callee_caller_cross_crate/auxiliary/a.rs14
-rw-r--r--src/test/incremental/callee_caller_cross_crate/b.rs19
-rw-r--r--src/test/incremental/change_add_field/struct_point.rs152
-rw-r--r--src/test/incremental/change_crate_dep_kind.rs15
-rw-r--r--src/test/incremental/change_crate_order/auxiliary/a.rs3
-rw-r--r--src/test/incremental/change_crate_order/auxiliary/b.rs3
-rw-r--r--src/test/incremental/change_crate_order/main.rs24
-rw-r--r--src/test/incremental/change_implementation_cross_crate/auxiliary/a.rs31
-rw-r--r--src/test/incremental/change_implementation_cross_crate/main.rs20
-rw-r--r--src/test/incremental/change_name_of_static_in_fn.rs16
-rw-r--r--src/test/incremental/change_private_fn/struct_point.rs104
-rw-r--r--src/test/incremental/change_private_fn_cc/auxiliary/point.rs25
-rw-r--r--src/test/incremental/change_private_fn_cc/struct_point.rs72
-rw-r--r--src/test/incremental/change_private_impl_method/struct_point.rs100
-rw-r--r--src/test/incremental/change_private_impl_method_cc/auxiliary/point.rs25
-rw-r--r--src/test/incremental/change_private_impl_method_cc/struct_point.rs73
-rw-r--r--src/test/incremental/change_pub_inherent_method_body/struct_point.rs91
-rw-r--r--src/test/incremental/change_pub_inherent_method_sig/struct_point.rs101
-rw-r--r--src/test/incremental/change_symbol_export_status.rs41
-rw-r--r--src/test/incremental/commandline-args.rs25
-rw-r--r--src/test/incremental/const-generics/hash-tyvid-regression-1.rs16
-rw-r--r--src/test/incremental/const-generics/hash-tyvid-regression-2.rs18
-rw-r--r--src/test/incremental/const-generics/hash-tyvid-regression-3.rs26
-rw-r--r--src/test/incremental/const-generics/hash-tyvid-regression-4.rs40
-rw-r--r--src/test/incremental/const-generics/issue-61338.rs12
-rw-r--r--src/test/incremental/const-generics/issue-61516.rs14
-rw-r--r--src/test/incremental/const-generics/issue-62536.rs9
-rw-r--r--src/test/incremental/const-generics/issue-64087.rs9
-rw-r--r--src/test/incremental/const-generics/issue-65623.rs12
-rw-r--r--src/test/incremental/const-generics/issue-68477.rs25
-rw-r--r--src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-1.rs23
-rw-r--r--src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-2.rs18
-rw-r--r--src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-3.rs22
-rw-r--r--src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-82034.rs34
-rw-r--r--src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-85031-1.rs23
-rw-r--r--src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-85031-3.rs25
-rw-r--r--src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-86953.rs16
-rw-r--r--src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-88022.rs28
-rw-r--r--src/test/incremental/crate_hash_reorder.rs27
-rw-r--r--src/test/incremental/cyclic-trait-hierarchy.rs13
-rw-r--r--src/test/incremental/delayed_span_bug.rs8
-rw-r--r--src/test/incremental/dirty_clean.rs49
-rw-r--r--src/test/incremental/extern_static/issue-49153.rs11
-rw-r--r--src/test/incremental/feature_gate.rs13
-rw-r--r--src/test/incremental/foreign.rs38
-rw-r--r--src/test/incremental/hash-module-order.rs28
-rw-r--r--src/test/incremental/hashes/call_expressions.rs200
-rw-r--r--src/test/incremental/hashes/closure_expressions.rs127
-rw-r--r--src/test/incremental/hashes/consts.rs109
-rw-r--r--src/test/incremental/hashes/enum_constructors.rs390
-rw-r--r--src/test/incremental/hashes/enum_defs.rs718
-rw-r--r--src/test/incremental/hashes/exported_vs_not.rs75
-rw-r--r--src/test/incremental/hashes/extern_mods.rs224
-rw-r--r--src/test/incremental/hashes/for_loops.rs302
-rw-r--r--src/test/incremental/hashes/function_interfaces.rs414
-rw-r--r--src/test/incremental/hashes/if_expressions.rs228
-rw-r--r--src/test/incremental/hashes/indexing_expressions.rs137
-rw-r--r--src/test/incremental/hashes/inherent_impls.rs790
-rw-r--r--src/test/incremental/hashes/inline_asm.rs222
-rw-r--r--src/test/incremental/hashes/let_expressions.rs222
-rw-r--r--src/test/incremental/hashes/loop_expressions.rs227
-rw-r--r--src/test/incremental/hashes/match_expressions.rs337
-rw-r--r--src/test/incremental/hashes/panic_exprs.rs151
-rw-r--r--src/test/incremental/hashes/statics.rs186
-rw-r--r--src/test/incremental/hashes/struct_constructors.rs270
-rw-r--r--src/test/incremental/hashes/struct_defs.rs335
-rw-r--r--src/test/incremental/hashes/trait_defs.rs1412
-rw-r--r--src/test/incremental/hashes/trait_impls.rs620
-rw-r--r--src/test/incremental/hashes/type_defs.rs220
-rw-r--r--src/test/incremental/hashes/unary_and_binary_exprs.rs509
-rw-r--r--src/test/incremental/hashes/while_let_loops.rs250
-rw-r--r--src/test/incremental/hashes/while_loops.rs252
-rw-r--r--src/test/incremental/hello_world.rs37
-rw-r--r--src/test/incremental/hygiene/auxiliary/cached_hygiene.rs36
-rw-r--r--src/test/incremental/hygiene/load_cached_hygiene.rs48
-rw-r--r--src/test/incremental/ich_method_call_trait_scope.rs40
-rw-r--r--src/test/incremental/ich_nested_items.rs23
-rw-r--r--src/test/incremental/ich_resolve_results.rs45
-rw-r--r--src/test/incremental/incremental_proc_macro.rs16
-rw-r--r--src/test/incremental/inlined_hir_34991/main.rs23
-rw-r--r--src/test/incremental/issue-100521-change-struct-name-assocty.rs65
-rw-r--r--src/test/incremental/issue-101518.rs31
-rw-r--r--src/test/incremental/issue-35593.rs12
-rw-r--r--src/test/incremental/issue-38222.rs27
-rw-r--r--src/test/incremental/issue-39569.rs27
-rw-r--r--src/test/incremental/issue-39828/auxiliary/generic.rs8
-rw-r--r--src/test/incremental/issue-39828/issue-39828.rs12
-rw-r--r--src/test/incremental/issue-42602.rs44
-rw-r--r--src/test/incremental/issue-49043.rs12
-rw-r--r--src/test/incremental/issue-49482.rs30
-rw-r--r--src/test/incremental/issue-49595/auxiliary/lit_a.rs1
-rw-r--r--src/test/incremental/issue-49595/auxiliary/lit_b.rs1
-rw-r--r--src/test/incremental/issue-49595/issue-49595.rs31
-rw-r--r--src/test/incremental/issue-51409.rs10
-rw-r--r--src/test/incremental/issue-54059.rs8
-rw-r--r--src/test/incremental/issue-54242.rs20
-rw-r--r--src/test/incremental/issue-59523-on-implemented-is-not-unused.rs27
-rw-r--r--src/test/incremental/issue-59524-layout-scalar-valid-range-is-not-unused.rs19
-rw-r--r--src/test/incremental/issue-60629.rs10
-rw-r--r--src/test/incremental/issue-61323.rs14
-rw-r--r--src/test/incremental/issue-61530.rs18
-rw-r--r--src/test/incremental/issue-62649-path-collisions-happen.rs13
-rw-r--r--src/test/incremental/issue-69596.rs21
-rw-r--r--src/test/incremental/issue-72386.rs21
-rw-r--r--src/test/incremental/issue-79661-missing-def-path-hash.rs14
-rw-r--r--src/test/incremental/issue-79890-imported-crates-changed.rs7
-rw-r--r--src/test/incremental/issue-80336-invalid-span.rs10
-rw-r--r--src/test/incremental/issue-80691-bad-eval-cache.rs184
-rw-r--r--src/test/incremental/issue-82920-predicate-order-miscompile.rs31
-rw-r--r--src/test/incremental/issue-84252-global-alloc.rs12
-rw-r--r--src/test/incremental/issue-85197-invalid-span/auxiliary/invalid-span-helper-lib.rs11
-rw-r--r--src/test/incremental/issue-85197-invalid-span/auxiliary/invalid-span-helper-mod.rs14
-rw-r--r--src/test/incremental/issue-85197-invalid-span/auxiliary/respan.rs19
-rw-r--r--src/test/incremental/issue-85197-invalid-span/invalid_span_main.rs24
-rw-r--r--src/test/incremental/issue-85360-eval-obligation-ice.rs118
-rw-r--r--src/test/incremental/issue-86753.rs50
-rw-r--r--src/test/incremental/issue-92163-missing-sourcefile/auxiliary/first_crate.rs3
-rw-r--r--src/test/incremental/issue-92163-missing-sourcefile/auxiliary/second_crate.rs10
-rw-r--r--src/test/incremental/issue-92163-missing-sourcefile/issue_92163_main.rs31
-rw-r--r--src/test/incremental/issue-92987-provisional-dep-node.rs24
-rw-r--r--src/test/incremental/issue-96319-coinductive-cycle.rs34
-rw-r--r--src/test/incremental/krate-inherent.rs23
-rw-r--r--src/test/incremental/krate-inlined.rs25
-rw-r--r--src/test/incremental/krate_reassign_34991/auxiliary/a.rs3
-rw-r--r--src/test/incremental/krate_reassign_34991/main.rs20
-rw-r--r--src/test/incremental/link_order/auxiliary/my_lib.rs3
-rw-r--r--src/test/incremental/link_order/main.rs12
-rw-r--r--src/test/incremental/lto-in-linker.rs9
-rw-r--r--src/test/incremental/lto.rs40
-rw-r--r--src/test/incremental/macro_export.rs12
-rw-r--r--src/test/incremental/mir-opt.rs11
-rw-r--r--src/test/incremental/no_mangle.rs10
-rw-r--r--src/test/incremental/remapped_paths_cc/auxiliary/extern_crate.rs11
-rw-r--r--src/test/incremental/remapped_paths_cc/main.rs28
-rw-r--r--src/test/incremental/remove-private-item-cross-crate/auxiliary/a.rs8
-rw-r--r--src/test/incremental/remove-private-item-cross-crate/main.rs20
-rw-r--r--src/test/incremental/remove_crate/auxiliary/extern_crate.rs3
-rw-r--r--src/test/incremental/remove_crate/main.rs24
-rw-r--r--src/test/incremental/remove_source_file/auxiliary/mod.rs3
-rw-r--r--src/test/incremental/remove_source_file/main.rs24
-rw-r--r--src/test/incremental/reorder_vtable.rs41
-rw-r--r--src/test/incremental/rlib-lto.rs8
-rw-r--r--src/test/incremental/rlib_cross_crate/auxiliary/a.rs16
-rw-r--r--src/test/incremental/rlib_cross_crate/b.rs28
-rw-r--r--src/test/incremental/rustc-rust-log.rs16
-rw-r--r--src/test/incremental/source_loc_macros.rs55
-rw-r--r--src/test/incremental/span_hash_stable/auxiliary/mod.rs7
-rw-r--r--src/test/incremental/span_hash_stable/auxiliary/sub1.rs5
-rw-r--r--src/test/incremental/span_hash_stable/auxiliary/sub2.rs5
-rw-r--r--src/test/incremental/span_hash_stable/main.rs24
-rw-r--r--src/test/incremental/spans_in_type_debuginfo.rs53
-rw-r--r--src/test/incremental/spans_significant_w_debuginfo.rs21
-rw-r--r--src/test/incremental/spans_significant_w_panic.rs28
-rw-r--r--src/test/incremental/spike-neg1.rs52
-rw-r--r--src/test/incremental/spike-neg2.rs52
-rw-r--r--src/test/incremental/spike.rs49
-rw-r--r--src/test/incremental/split_debuginfo_cached.rs25
-rw-r--r--src/test/incremental/split_debuginfo_mode.rs33
-rw-r--r--src/test/incremental/static_cycle/b.rs9
-rw-r--r--src/test/incremental/static_refering_to_other_static/issue-49081.rs8
-rw-r--r--src/test/incremental/static_refering_to_other_static2/issue.rs10
-rw-r--r--src/test/incremental/static_refering_to_other_static3/issue.rs15
-rw-r--r--src/test/incremental/static_stable_hash/issue-49301.rs18
-rw-r--r--src/test/incremental/string_constant.rs47
-rw-r--r--src/test/incremental/struct_add_field.rs39
-rw-r--r--src/test/incremental/struct_change_field_name.rs47
-rw-r--r--src/test/incremental/struct_change_field_type.rs44
-rw-r--r--src/test/incremental/struct_change_field_type_cross_crate/auxiliary/a.rs19
-rw-r--r--src/test/incremental/struct_change_field_type_cross_crate/b.rs27
-rw-r--r--src/test/incremental/struct_change_nothing.rs44
-rw-r--r--src/test/incremental/struct_remove_field.rs43
-rw-r--r--src/test/incremental/thinlto/cgu_invalidated_via_import.rs48
-rw-r--r--src/test/incremental/thinlto/cgu_invalidated_when_export_added.rs26
-rw-r--r--src/test/incremental/thinlto/cgu_invalidated_when_export_removed.rs26
-rw-r--r--src/test/incremental/thinlto/cgu_invalidated_when_import_added.rs62
-rw-r--r--src/test/incremental/thinlto/cgu_invalidated_when_import_removed.rs74
-rw-r--r--src/test/incremental/thinlto/cgu_keeps_identical_fn.rs72
-rw-r--r--src/test/incremental/thinlto/independent_cgus_dont_affect_each_other.rs58
-rw-r--r--src/test/incremental/type_alias_cross_crate/auxiliary/a.rs15
-rw-r--r--src/test/incremental/type_alias_cross_crate/b.rs22
-rw-r--r--src/test/incremental/unchecked_dirty_clean.rs34
-rw-r--r--src/test/incremental/warnings-reemitted.rs9
193 files changed, 0 insertions, 13670 deletions
diff --git a/src/test/incremental/add_private_fn_at_krate_root_cc/auxiliary/point.rs b/src/test/incremental/add_private_fn_at_krate_root_cc/auxiliary/point.rs
deleted file mode 100644
index 16aaad348..000000000
--- a/src/test/incremental/add_private_fn_at_krate_root_cc/auxiliary/point.rs
+++ /dev/null
@@ -1,18 +0,0 @@
-pub struct Point {
- pub x: f32,
- pub y: f32,
-}
-
-#[cfg(rpass2)]
-fn unused_helper() {
-}
-
-pub fn distance_squared(this: &Point) -> f32 {
- return this.x * this.x + this.y * this.y;
-}
-
-impl Point {
- pub fn distance_from_origin(&self) -> f32 {
- distance_squared(self).sqrt()
- }
-}
diff --git a/src/test/incremental/add_private_fn_at_krate_root_cc/struct_point.rs b/src/test/incremental/add_private_fn_at_krate_root_cc/struct_point.rs
deleted file mode 100644
index ea1ea1943..000000000
--- a/src/test/incremental/add_private_fn_at_krate_root_cc/struct_point.rs
+++ /dev/null
@@ -1,73 +0,0 @@
-// Test where we add a private item into the root of an external.
-// crate. This should not cause anything we use to be invalidated.
-// Regression test for #36168.
-
-// revisions:cfail1 cfail2
-// compile-flags: -Z query-dep-graph
-// aux-build:point.rs
-// build-pass
-
-#![feature(rustc_attrs)]
-#![feature(stmt_expr_attributes)]
-#![allow(dead_code)]
-#![crate_type = "rlib"]
-
-#![rustc_partition_reused(module="struct_point-fn_calls_methods_in_same_impl", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_calls_free_fn", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_read_field", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_write_field", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_make_struct", cfg="cfail2")]
-
-extern crate point;
-
-/// A fn item that calls (public) methods on `Point` from the same impl
-pub mod fn_calls_methods_in_same_impl {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn check() {
- let x = Point { x: 2.0, y: 2.0 };
- x.distance_from_origin();
- }
-}
-
-/// A fn item that calls (public) methods on `Point` from another impl
-pub mod fn_calls_free_fn {
- use point::{self, Point};
-
- #[rustc_clean(cfg="cfail2")]
- pub fn check() {
- let x = Point { x: 2.0, y: 2.0 };
- point::distance_squared(&x);
- }
-}
-
-/// A fn item that makes an instance of `Point` but does not invoke methods
-pub mod fn_make_struct {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn make_origin() -> Point {
- Point { x: 2.0, y: 2.0 }
- }
-}
-
-/// A fn item that reads fields from `Point` but does not invoke methods
-pub mod fn_read_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn get_x(p: Point) -> f32 {
- p.x
- }
-}
-
-/// A fn item that writes to a field of `Point` but does not invoke methods
-pub mod fn_write_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn inc_x(p: &mut Point) {
- p.x += 1.0;
- }
-}
diff --git a/src/test/incremental/async-lifetimes.rs b/src/test/incremental/async-lifetimes.rs
deleted file mode 100644
index 90a0b93b9..000000000
--- a/src/test/incremental/async-lifetimes.rs
+++ /dev/null
@@ -1,19 +0,0 @@
-// revisions: rpass1 rpass2
-// edition:2021
-
-// See https://github.com/rust-lang/rust/issues/98890
-
-#![allow(unused)]
-
-struct Foo;
-
-impl Foo {
- async fn f(&self, _: &&()) -> &() {
- &()
- }
-}
-
-#[cfg(rpass2)]
-enum Bar {}
-
-fn main() {}
diff --git a/src/test/incremental/auxiliary/incremental_proc_macro_aux.rs b/src/test/incremental/auxiliary/incremental_proc_macro_aux.rs
deleted file mode 100644
index 6961450b4..000000000
--- a/src/test/incremental/auxiliary/incremental_proc_macro_aux.rs
+++ /dev/null
@@ -1,22 +0,0 @@
-// force-host
-// no-prefer-dynamic
-
-#![crate_type = "proc-macro"]
-
-extern crate proc_macro;
-
-use proc_macro::TokenStream;
-
-// Add a function to shift DefIndex of registrar function
-#[cfg(cfail2)]
-fn foo() {}
-
-#[proc_macro_derive(IncrementalMacro)]
-pub fn derive(input: TokenStream) -> TokenStream {
- #[cfg(cfail2)]
- {
- foo();
- }
-
- "".parse().unwrap()
-}
diff --git a/src/test/incremental/auxiliary/issue-49482-macro-def.rs b/src/test/incremental/auxiliary/issue-49482-macro-def.rs
deleted file mode 100644
index bfa7abb1a..000000000
--- a/src/test/incremental/auxiliary/issue-49482-macro-def.rs
+++ /dev/null
@@ -1,40 +0,0 @@
-// force-host
-// no-prefer-dynamic
-
-#![crate_type="proc-macro"]
-#![allow(non_snake_case)]
-
-extern crate proc_macro;
-
-macro_rules! proc_macro_expr_impl {
- ($(
- $( #[$attr:meta] )*
- pub fn $func:ident($input:ident: &str) -> String;
- )+) => {
- $(
- $( #[$attr] )*
- #[proc_macro_derive($func)]
- pub fn $func(_input: ::proc_macro::TokenStream) -> ::proc_macro::TokenStream {
- panic!()
- }
- )+
- };
-}
-
-proc_macro_expr_impl! {
- pub fn f1(input: &str) -> String;
- pub fn f2(input: &str) -> String;
- pub fn f3(input: &str) -> String;
- pub fn f4(input: &str) -> String;
- pub fn f5(input: &str) -> String;
- pub fn f6(input: &str) -> String;
- pub fn f7(input: &str) -> String;
- pub fn f8(input: &str) -> String;
- pub fn f9(input: &str) -> String;
- pub fn fA(input: &str) -> String;
- pub fn fB(input: &str) -> String;
- pub fn fC(input: &str) -> String;
- pub fn fD(input: &str) -> String;
- pub fn fE(input: &str) -> String;
- pub fn fF(input: &str) -> String;
-}
diff --git a/src/test/incremental/auxiliary/issue-49482-reexport.rs b/src/test/incremental/auxiliary/issue-49482-reexport.rs
deleted file mode 100644
index 39f19e3f1..000000000
--- a/src/test/incremental/auxiliary/issue-49482-reexport.rs
+++ /dev/null
@@ -1,6 +0,0 @@
-#[macro_use]
-extern crate issue_49482_macro_def;
-
-pub use issue_49482_macro_def::*;
-
-pub fn foo() {}
diff --git a/src/test/incremental/auxiliary/issue-54059.rs b/src/test/incremental/auxiliary/issue-54059.rs
deleted file mode 100644
index fa2814a77..000000000
--- a/src/test/incremental/auxiliary/issue-54059.rs
+++ /dev/null
@@ -1,50 +0,0 @@
-// force-host
-// no-prefer-dynamic
-
-// check that having extern "C" functions in a proc macro doesn't crash.
-
-#![crate_type="proc-macro"]
-#![allow(non_snake_case)]
-
-extern crate proc_macro;
-
-macro_rules! proc_macro_tokenstream {
- () => {
- ::proc_macro::TokenStream
- };
-}
-
-macro_rules! proc_macro_expr_impl {
- ($(
- $( #[$attr:meta] )*
- pub fn $func:ident($input:ident: &str) -> String $body:block
- )+) => {
- $(
- // Parses an input that looks like:
- //
- // ```
- // #[allow(unused)]
- // enum ProcMacroHack {
- // Input = (stringify!(ARGS), 0).1,
- // }
- // ```
- $( #[$attr] )*
- #[proc_macro_derive($func)]
- pub fn $func(input: proc_macro_tokenstream!()) -> proc_macro_tokenstream!() {
- unsafe { rust_dbg_extern_identity_u64(0); }
- panic!()
- }
- )+
- };
-}
-
-proc_macro_expr_impl! {
- pub fn base2_impl(input: &str) -> String {
- panic!()
- }
-}
-
-#[link(name="rust_test_helpers")]
-extern "C" {
- pub fn rust_dbg_extern_identity_u64(v: u64) -> u64;
-}
diff --git a/src/test/incremental/auxiliary/issue-79661.rs b/src/test/incremental/auxiliary/issue-79661.rs
deleted file mode 100644
index cd32a52eb..000000000
--- a/src/test/incremental/auxiliary/issue-79661.rs
+++ /dev/null
@@ -1,6 +0,0 @@
-#![feature(rustc_attrs)]
-
-#[cfg_attr(any(rpass2, rpass3), doc = "Some comment")]
-pub struct Foo;
-
-pub struct Wrapper(Foo);
diff --git a/src/test/incremental/auxiliary/issue-79890.rs b/src/test/incremental/auxiliary/issue-79890.rs
deleted file mode 100644
index 8eaeafa52..000000000
--- a/src/test/incremental/auxiliary/issue-79890.rs
+++ /dev/null
@@ -1 +0,0 @@
-pub trait MyTrait {}
diff --git a/src/test/incremental/auxiliary/rustc-rust-log-aux.rs b/src/test/incremental/auxiliary/rustc-rust-log-aux.rs
deleted file mode 100644
index a361373dc..000000000
--- a/src/test/incremental/auxiliary/rustc-rust-log-aux.rs
+++ /dev/null
@@ -1,8 +0,0 @@
-// rustc-env:RUSTC_LOG=debug
-#[cfg(rpass1)]
-pub fn foo() {}
-
-#[cfg(rpass2)]
-pub fn foo() {
- println!();
-}
diff --git a/src/test/incremental/cache_file_headers.rs b/src/test/incremental/cache_file_headers.rs
deleted file mode 100644
index 9cf611c33..000000000
--- a/src/test/incremental/cache_file_headers.rs
+++ /dev/null
@@ -1,20 +0,0 @@
-// This test case makes sure that the compiler does not try to re-use anything
-// from the incremental compilation cache if the cache was produced by a
-// different compiler version. This is tested by artificially forcing the
-// emission of a different compiler version in the header of rpass1 artifacts,
-// and then making sure that the only object file of the test program gets
-// re-codegened although the program stays unchanged.
-
-// The `l33t haxx0r` Rust compiler is known to produce incr. comp. artifacts
-// that are outrageously incompatible with just about anything, even itself:
-//[rpass1] rustc-env:RUSTC_FORCE_RUSTC_VERSION="l33t haxx0r rustc 2.1 LTS"
-
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-#![rustc_partition_codegened(module="cache_file_headers", cfg="rpass2")]
-
-fn main() {
- // empty
-}
diff --git a/src/test/incremental/callee_caller_cross_crate/auxiliary/a.rs b/src/test/incremental/callee_caller_cross_crate/auxiliary/a.rs
deleted file mode 100644
index 6445f87f7..000000000
--- a/src/test/incremental/callee_caller_cross_crate/auxiliary/a.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-#![crate_type="rlib"]
-
-#[cfg(rpass1)]
-pub fn function0(x: u32) -> u32 {
- x
-}
-
-#[cfg(rpass2)]
-pub fn function0(x: i32) -> i32 {
- x
-}
-
-pub fn function1(x: u32) {
-}
diff --git a/src/test/incremental/callee_caller_cross_crate/b.rs b/src/test/incremental/callee_caller_cross_crate/b.rs
deleted file mode 100644
index 084ed232a..000000000
--- a/src/test/incremental/callee_caller_cross_crate/b.rs
+++ /dev/null
@@ -1,19 +0,0 @@
-// aux-build:a.rs
-// revisions:rpass1 rpass2
-// compile-flags:-Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-extern crate a;
-
-#[rustc_clean(except="typeck", cfg="rpass2")]
-pub fn call_function0() {
- a::function0(77);
-}
-
-#[rustc_clean(cfg="rpass2")]
-pub fn call_function1() {
- a::function1(77);
-}
-
-pub fn main() { }
diff --git a/src/test/incremental/change_add_field/struct_point.rs b/src/test/incremental/change_add_field/struct_point.rs
deleted file mode 100644
index 3308ea562..000000000
--- a/src/test/incremental/change_add_field/struct_point.rs
+++ /dev/null
@@ -1,152 +0,0 @@
-// Test where we change a type definition by adding a field. Fns with
-// this type in their signature are recompiled, as are their callers.
-// Fns with that type used only in their body are also recompiled, but
-// their callers are not.
-
-// revisions:cfail1 cfail2
-// compile-flags: -Z query-dep-graph
-// build-pass
-
-#![feature(rustc_attrs)]
-#![feature(stmt_expr_attributes)]
-#![allow(dead_code)]
-#![crate_type = "rlib"]
-
-// These are expected to require codegen.
-#![rustc_partition_codegened(module="struct_point-point", cfg="cfail2")]
-#![rustc_partition_codegened(module="struct_point-fn_with_type_in_sig", cfg="cfail2")]
-#![rustc_partition_codegened(module="struct_point-call_fn_with_type_in_sig", cfg="cfail2")]
-#![rustc_partition_codegened(module="struct_point-fn_with_type_in_body", cfg="cfail2")]
-#![rustc_partition_codegened(module="struct_point-fn_make_struct", cfg="cfail2")]
-#![rustc_partition_codegened(module="struct_point-fn_read_field", cfg="cfail2")]
-#![rustc_partition_codegened(module="struct_point-fn_write_field", cfg="cfail2")]
-
-#![rustc_partition_reused(module="struct_point-call_fn_with_type_in_body", cfg="cfail2")]
-
-pub mod point {
- #[cfg(cfail1)]
- pub struct Point {
- pub x: f32,
- pub y: f32,
- }
-
- #[cfg(cfail2)]
- pub struct Point {
- pub x: f32,
- pub y: f32,
- pub z: f32,
- }
-
- impl Point {
- pub fn origin() -> Point {
- #[cfg(cfail1)]
- return Point { x: 0.0, y: 0.0 };
-
- #[cfg(cfail2)]
- return Point { x: 0.0, y: 0.0, z: 0.0 };
- }
-
- pub fn total(&self) -> f32 {
- #[cfg(cfail1)]
- return self.x + self.y;
-
- #[cfg(cfail2)]
- return self.x + self.y + self.z;
- }
-
- pub fn x(&self) -> f32 {
- self.x
- }
- }
-}
-
-/// A function that has the changed type in its signature; must currently be
-/// rebuilt.
-///
-/// You could imagine that, in the future, if the change were
-/// sufficiently "private", we might not need to type-check again.
-/// Rebuilding is probably always necessary since the layout may be
-/// affected.
-pub mod fn_with_type_in_sig {
- use point::Point;
-
- #[rustc_clean(except="typeck,fn_sig,optimized_mir", cfg="cfail2")]
- pub fn boop(p: Option<&Point>) -> f32 {
- p.map(|p| p.total()).unwrap_or(0.0)
- }
-}
-
-/// Call a function that has the changed type in its signature; this
-/// currently must also be rebuilt.
-///
-/// You could imagine that, in the future, if the change were
-/// sufficiently "private", we might not need to type-check again.
-/// Rebuilding is probably always necessary since the layout may be
-/// affected.
-pub mod call_fn_with_type_in_sig {
- use fn_with_type_in_sig;
-
- #[rustc_clean(except="typeck,optimized_mir", cfg="cfail2")]
- pub fn bip() -> f32 {
- fn_with_type_in_sig::boop(None)
- }
-}
-
-/// A function that uses the changed type, but only in its body, not its
-/// signature.
-///
-/// You could imagine that, in the future, if the change were
-/// sufficiently "private", we might not need to type-check again.
-/// Rebuilding is probably always necessary since the layout may be
-/// affected.
-pub mod fn_with_type_in_body {
- use point::Point;
-
- #[rustc_clean(except="typeck,optimized_mir", cfg="cfail2")]
- pub fn boop() -> f32 {
- Point::origin().total()
- }
-}
-
-/// A function `X` that calls a function `Y`, where `Y` uses the changed type in its
-/// body. In this case, the effects of the change should be contained
-/// to `Y`; `X` should not have to be rebuilt, nor should it need to be
-/// type-checked again.
-pub mod call_fn_with_type_in_body {
- use fn_with_type_in_body;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn bip() -> f32 {
- fn_with_type_in_body::boop()
- }
-}
-
-/// A function item that makes an instance of `Point` but does not invoke methods.
-pub mod fn_make_struct {
- use point::Point;
-
- #[rustc_clean(except="typeck,fn_sig,optimized_mir", cfg="cfail2")]
- pub fn make_origin(p: Point) -> Point {
- Point { ..p }
- }
-}
-
-/// A function item that reads fields from `Point` but does not invoke methods.
-pub mod fn_read_field {
- use point::Point;
-
- #[rustc_clean(except="typeck,fn_sig,optimized_mir", cfg="cfail2")]
- pub fn get_x(p: Point) -> f32 {
- p.x
- }
-}
-
-/// A function item that writes to a field of `Point` but does not invoke methods.
-pub mod fn_write_field {
- use point::Point;
-
- #[rustc_clean(except="typeck,fn_sig,optimized_mir", cfg="cfail2")]
- pub fn inc_x(p: &mut Point) {
- p.x += 1.0;
- }
-}
diff --git a/src/test/incremental/change_crate_dep_kind.rs b/src/test/incremental/change_crate_dep_kind.rs
deleted file mode 100644
index 8c35f6ca0..000000000
--- a/src/test/incremental/change_crate_dep_kind.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-// Test that we detect changes to the `dep_kind` query. If the change is not
-// detected then -Zincremental-verify-ich will trigger an assertion.
-
-// ignore-wasm32-bare compiled with panic=abort by default
-// revisions:cfail1 cfail2
-// compile-flags: -Z query-dep-graph -Cpanic=unwind
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![feature(panic_unwind)]
-
-// Turn the panic_unwind crate from an explicit into an implicit query:
-#[cfg(cfail1)]
-extern crate panic_unwind;
-
-fn main() {}
diff --git a/src/test/incremental/change_crate_order/auxiliary/a.rs b/src/test/incremental/change_crate_order/auxiliary/a.rs
deleted file mode 100644
index 1bd48714a..000000000
--- a/src/test/incremental/change_crate_order/auxiliary/a.rs
+++ /dev/null
@@ -1,3 +0,0 @@
-#![crate_type="rlib"]
-
-pub static A : u32 = 32;
diff --git a/src/test/incremental/change_crate_order/auxiliary/b.rs b/src/test/incremental/change_crate_order/auxiliary/b.rs
deleted file mode 100644
index 001b88912..000000000
--- a/src/test/incremental/change_crate_order/auxiliary/b.rs
+++ /dev/null
@@ -1,3 +0,0 @@
-#![crate_type="rlib"]
-
-pub static B: u32 = 32;
diff --git a/src/test/incremental/change_crate_order/main.rs b/src/test/incremental/change_crate_order/main.rs
deleted file mode 100644
index 7448b54dd..000000000
--- a/src/test/incremental/change_crate_order/main.rs
+++ /dev/null
@@ -1,24 +0,0 @@
-// aux-build:a.rs
-// aux-build:b.rs
-// revisions:rpass1 rpass2
-
-#![feature(rustc_attrs)]
-
-
-#[cfg(rpass1)]
-extern crate a;
-#[cfg(rpass1)]
-extern crate b;
-
-#[cfg(rpass2)]
-extern crate b;
-#[cfg(rpass2)]
-extern crate a;
-
-use a::A;
-use b::B;
-
-//? #[rustc_clean(label="typeck", cfg="rpass2")]
-pub fn main() {
- A + B;
-}
diff --git a/src/test/incremental/change_implementation_cross_crate/auxiliary/a.rs b/src/test/incremental/change_implementation_cross_crate/auxiliary/a.rs
deleted file mode 100644
index 7320a97b9..000000000
--- a/src/test/incremental/change_implementation_cross_crate/auxiliary/a.rs
+++ /dev/null
@@ -1,31 +0,0 @@
-#![allow(warnings)]
-#![crate_name = "a"]
-#![crate_type = "rlib"]
-
-#[cfg(rpass1)]
-#[inline(never)]
-pub fn foo(b: u8) -> u32 {
- b as u32
-}
-
-#[cfg(rpass2)]
-#[inline(never)]
-pub fn foo(b: u8) -> u32 {
- (b + 42) as u32
-}
-
-pub fn bar(b: u8) -> u32 {
- bar_impl(b) as u32
-}
-
-#[cfg(rpass1)]
-#[inline(never)]
-fn bar_impl(b: u8) -> u16 {
- b as u16
-}
-
-#[cfg(rpass2)]
-#[inline(never)]
-fn bar_impl(b: u8) -> u32 {
- (b + 42) as u32
-}
diff --git a/src/test/incremental/change_implementation_cross_crate/main.rs b/src/test/incremental/change_implementation_cross_crate/main.rs
deleted file mode 100644
index dee9ebd74..000000000
--- a/src/test/incremental/change_implementation_cross_crate/main.rs
+++ /dev/null
@@ -1,20 +0,0 @@
-// Test that we are able to reuse `main` despite the changes in the implementation of `foo` and
-// `bar`.
-
-// revisions: rpass1 rpass2
-// aux-build: a.rs
-// compile-flags: -Zquery-dep-graph
-
-#![feature(rustc_attrs)]
-#![crate_type = "bin"]
-#![rustc_partition_reused(module = "main", cfg = "rpass2")]
-
-extern crate a;
-
-pub fn main() {
- let vec: Vec<u8> = vec![0, 1, 2, 3];
- for b in vec {
- println!("{}", a::foo(b));
- println!("{}", a::bar(b));
- }
-}
diff --git a/src/test/incremental/change_name_of_static_in_fn.rs b/src/test/incremental/change_name_of_static_in_fn.rs
deleted file mode 100644
index fd16ad2dc..000000000
--- a/src/test/incremental/change_name_of_static_in_fn.rs
+++ /dev/null
@@ -1,16 +0,0 @@
-// revisions:rpass1 rpass2 rpass3
-
-// See issue #57692.
-
-#![allow(warnings)]
-
-fn main() {
- #[cfg(rpass1)]
- {
- static map: u64 = 0;
- }
- #[cfg(not(rpass1))]
- {
- static MAP: u64 = 0;
- }
-}
diff --git a/src/test/incremental/change_private_fn/struct_point.rs b/src/test/incremental/change_private_fn/struct_point.rs
deleted file mode 100644
index d57267adc..000000000
--- a/src/test/incremental/change_private_fn/struct_point.rs
+++ /dev/null
@@ -1,104 +0,0 @@
-// Test where we change the body of a private method in an impl.
-// We then test what sort of functions must be rebuilt as a result.
-
-// revisions:cfail1 cfail2
-// compile-flags: -Z query-dep-graph
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![feature(rustc_attrs)]
-#![feature(stmt_expr_attributes)]
-#![allow(dead_code)]
-#![crate_type = "rlib"]
-
-#![rustc_partition_codegened(module="struct_point-point", cfg="cfail2")]
-
-#![rustc_partition_reused(module="struct_point-fn_calls_methods_in_same_impl", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_calls_methods_in_another_impl", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_make_struct", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_read_field", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_write_field", cfg="cfail2")]
-
-pub mod point {
- pub struct Point {
- pub x: f32,
- pub y: f32,
- }
-
- fn distance_squared(this: &Point) -> f32 {
- #[cfg(cfail1)]
- return this.x + this.y;
-
- #[cfg(cfail2)]
- return this.x * this.x + this.y * this.y;
- }
-
- impl Point {
- pub fn distance_from_origin(&self) -> f32 {
- distance_squared(self).sqrt()
- }
- }
-
- impl Point {
- pub fn translate(&mut self, x: f32, y: f32) {
- self.x += x;
- self.y += y;
- }
- }
-
-}
-
-/// A fn item that calls (public) methods on `Point` from the same impl which changed
-pub mod fn_calls_methods_in_same_impl {
- use point::Point;
-
- // The cached result should actually be loaded from disk
- // (not just marked green) - for example, `DeadVisitor`
- // always runs during compilation as a "pass", and loads
- // the typeck results for bodies.
- #[rustc_clean(cfg="cfail2", loaded_from_disk="typeck")]
- pub fn check() {
- let x = Point { x: 2.0, y: 2.0 };
- x.distance_from_origin();
- }
-}
-
-/// A fn item that calls (public) methods on `Point` from another impl
-pub mod fn_calls_methods_in_another_impl {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn check() {
- let mut x = Point { x: 2.0, y: 2.0 };
- x.translate(3.0, 3.0);
- }
-}
-
-/// A fn item that makes an instance of `Point` but does not invoke methods
-pub mod fn_make_struct {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn make_origin() -> Point {
- Point { x: 2.0, y: 2.0 }
- }
-}
-
-/// A fn item that reads fields from `Point` but does not invoke methods
-pub mod fn_read_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn get_x(p: Point) -> f32 {
- p.x
- }
-}
-
-/// A fn item that writes to a field of `Point` but does not invoke methods
-pub mod fn_write_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn inc_x(p: &mut Point) {
- p.x += 1.0;
- }
-}
diff --git a/src/test/incremental/change_private_fn_cc/auxiliary/point.rs b/src/test/incremental/change_private_fn_cc/auxiliary/point.rs
deleted file mode 100644
index 483f20572..000000000
--- a/src/test/incremental/change_private_fn_cc/auxiliary/point.rs
+++ /dev/null
@@ -1,25 +0,0 @@
-pub struct Point {
- pub x: f32,
- pub y: f32,
-}
-
-fn distance_squared(this: &Point) -> f32 {
- #[cfg(cfail1)]
- return this.x + this.y;
-
- #[cfg(cfail2)]
- return this.x * this.x + this.y * this.y;
-}
-
-impl Point {
- pub fn distance_from_origin(&self) -> f32 {
- distance_squared(self).sqrt()
- }
-}
-
-impl Point {
- pub fn translate(&mut self, x: f32, y: f32) {
- self.x += x;
- self.y += y;
- }
-}
diff --git a/src/test/incremental/change_private_fn_cc/struct_point.rs b/src/test/incremental/change_private_fn_cc/struct_point.rs
deleted file mode 100644
index 1c27ec3a3..000000000
--- a/src/test/incremental/change_private_fn_cc/struct_point.rs
+++ /dev/null
@@ -1,72 +0,0 @@
-// Test where we change the body of a private method in an impl.
-// We then test what sort of functions must be rebuilt as a result.
-
-// revisions:cfail1 cfail2
-// compile-flags: -Z query-dep-graph
-// aux-build:point.rs
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![crate_type = "rlib"]
-#![feature(rustc_attrs)]
-#![feature(stmt_expr_attributes)]
-#![allow(dead_code)]
-
-#![rustc_partition_reused(module="struct_point-fn_calls_methods_in_same_impl", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_calls_methods_in_another_impl", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_read_field", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_write_field", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_make_struct", cfg="cfail2")]
-
-extern crate point;
-
-/// A fn item that calls (public) methods on `Point` from the same impl which changed
-pub mod fn_calls_methods_in_same_impl {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn check() {
- let x = Point { x: 2.0, y: 2.0 };
- x.distance_from_origin();
- }
-}
-
-/// A fn item that calls (public) methods on `Point` from another impl
-pub mod fn_calls_methods_in_another_impl {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn check() {
- let mut x = Point { x: 2.0, y: 2.0 };
- x.translate(3.0, 3.0);
- }
-}
-
-/// A fn item that makes an instance of `Point` but does not invoke methods
-pub mod fn_make_struct {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn make_origin() -> Point {
- Point { x: 2.0, y: 2.0 }
- }
-}
-
-/// A fn item that reads fields from `Point` but does not invoke methods
-pub mod fn_read_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn get_x(p: Point) -> f32 {
- p.x
- }
-}
-
-/// A fn item that writes to a field of `Point` but does not invoke methods
-pub mod fn_write_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn inc_x(p: &mut Point) {
- p.x += 1.0;
- }
-}
diff --git a/src/test/incremental/change_private_impl_method/struct_point.rs b/src/test/incremental/change_private_impl_method/struct_point.rs
deleted file mode 100644
index cf43e4757..000000000
--- a/src/test/incremental/change_private_impl_method/struct_point.rs
+++ /dev/null
@@ -1,100 +0,0 @@
-// Test where we change the body of a private method in an impl.
-// We then test what sort of functions must be rebuilt as a result.
-
-// revisions:cfail1 cfail2
-// compile-flags: -Z query-dep-graph
-// build-pass
-
-#![feature(rustc_attrs)]
-#![feature(stmt_expr_attributes)]
-#![allow(dead_code)]
-#![crate_type = "rlib"]
-
-#![rustc_partition_codegened(module="struct_point-point", cfg="cfail2")]
-
-#![rustc_partition_reused(module="struct_point-fn_calls_methods_in_same_impl", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_calls_methods_in_another_impl", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_make_struct", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_read_field", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_write_field", cfg="cfail2")]
-
-pub mod point {
- pub struct Point {
- pub x: f32,
- pub y: f32,
- }
-
- impl Point {
- pub fn distance_squared(&self) -> f32 {
- #[cfg(cfail1)]
- return self.x + self.y;
-
- #[cfg(cfail2)]
- return self.x * self.x + self.y * self.y;
- }
-
- pub fn distance_from_origin(&self) -> f32 {
- self.distance_squared().sqrt()
- }
- }
-
- impl Point {
- pub fn translate(&mut self, x: f32, y: f32) {
- self.x += x;
- self.y += y;
- }
- }
-
-}
-
-/// A fn item that calls (public) methods on `Point` from the same impl which changed
-pub mod fn_calls_methods_in_same_impl {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn check() {
- let x = Point { x: 2.0, y: 2.0 };
- x.distance_from_origin();
- }
-}
-
-/// A fn item that calls (public) methods on `Point` from another impl
-pub mod fn_calls_methods_in_another_impl {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn check() {
- let mut x = Point { x: 2.0, y: 2.0 };
- x.translate(3.0, 3.0);
- }
-}
-
-/// A fn item that makes an instance of `Point` but does not invoke methods
-pub mod fn_make_struct {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn make_origin() -> Point {
- Point { x: 2.0, y: 2.0 }
- }
-}
-
-/// A fn item that reads fields from `Point` but does not invoke methods
-pub mod fn_read_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn get_x(p: Point) -> f32 {
- p.x
- }
-}
-
-/// A fn item that writes to a field of `Point` but does not invoke methods
-pub mod fn_write_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn inc_x(p: &mut Point) {
- p.x += 1.0;
- }
-}
diff --git a/src/test/incremental/change_private_impl_method_cc/auxiliary/point.rs b/src/test/incremental/change_private_impl_method_cc/auxiliary/point.rs
deleted file mode 100644
index 2441da06b..000000000
--- a/src/test/incremental/change_private_impl_method_cc/auxiliary/point.rs
+++ /dev/null
@@ -1,25 +0,0 @@
-pub struct Point {
- pub x: f32,
- pub y: f32,
-}
-
-impl Point {
- fn distance_squared(&self) -> f32 {
- #[cfg(cfail1)]
- return self.x + self.y;
-
- #[cfg(cfail2)]
- return self.x * self.x + self.y * self.y;
- }
-
- pub fn distance_from_origin(&self) -> f32 {
- self.distance_squared().sqrt()
- }
-}
-
-impl Point {
- pub fn translate(&mut self, x: f32, y: f32) {
- self.x += x;
- self.y += y;
- }
-}
diff --git a/src/test/incremental/change_private_impl_method_cc/struct_point.rs b/src/test/incremental/change_private_impl_method_cc/struct_point.rs
deleted file mode 100644
index 9fe8b5df9..000000000
--- a/src/test/incremental/change_private_impl_method_cc/struct_point.rs
+++ /dev/null
@@ -1,73 +0,0 @@
-// Test where we change the body of a private method in an impl.
-// We then test what sort of functions must be rebuilt as a result.
-
-// revisions:cfail1 cfail2
-// compile-flags: -Z query-dep-graph
-// aux-build:point.rs
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![crate_type = "rlib"]
-#![feature(rustc_attrs)]
-#![feature(stmt_expr_attributes)]
-#![allow(dead_code)]
-
-#![rustc_partition_reused(module="struct_point-fn_read_field", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_write_field", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_make_struct", cfg="cfail2")]
-
-#![rustc_partition_reused(module="struct_point-fn_calls_methods_in_same_impl", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_calls_methods_in_another_impl", cfg="cfail2")]
-
-extern crate point;
-
-/// A fn item that calls (public) methods on `Point` from the same impl which changed
-pub mod fn_calls_methods_in_same_impl {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn check() {
- let x = Point { x: 2.0, y: 2.0 };
- x.distance_from_origin();
- }
-}
-
-/// A fn item that calls (public) methods on `Point` from another impl
-pub mod fn_calls_methods_in_another_impl {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn dirty() {
- let mut x = Point { x: 2.0, y: 2.0 };
- x.translate(3.0, 3.0);
- }
-}
-
-/// A fn item that makes an instance of `Point` but does not invoke methods
-pub mod fn_make_struct {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn make_origin() -> Point {
- Point { x: 2.0, y: 2.0 }
- }
-}
-
-/// A fn item that reads fields from `Point` but does not invoke methods
-pub mod fn_read_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn get_x(p: Point) -> f32 {
- p.x
- }
-}
-
-/// A fn item that writes to a field of `Point` but does not invoke methods
-pub mod fn_write_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn inc_x(p: &mut Point) {
- p.x += 1.0;
- }
-}
diff --git a/src/test/incremental/change_pub_inherent_method_body/struct_point.rs b/src/test/incremental/change_pub_inherent_method_body/struct_point.rs
deleted file mode 100644
index 1b87b18fc..000000000
--- a/src/test/incremental/change_pub_inherent_method_body/struct_point.rs
+++ /dev/null
@@ -1,91 +0,0 @@
-// Test where we change the body of a public, inherent method.
-
-// revisions:cfail1 cfail2
-// compile-flags: -Z query-dep-graph
-// build-pass
-
-#![crate_type = "rlib"]
-#![feature(rustc_attrs)]
-#![feature(stmt_expr_attributes)]
-#![allow(dead_code)]
-
-#![rustc_partition_codegened(module="struct_point-point", cfg="cfail2")]
-
-#![rustc_partition_reused(module="struct_point-fn_calls_changed_method", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_calls_another_method", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_make_struct", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_read_field", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_write_field", cfg="cfail2")]
-
-pub mod point {
- pub struct Point {
- pub x: f32,
- pub y: f32,
- }
-
- impl Point {
- pub fn distance_from_origin(&self) -> f32 {
- #[cfg(cfail1)]
- return self.x * self.x + self.y * self.y;
-
- #[cfg(cfail2)]
- return (self.x * self.x + self.y * self.y).sqrt();
- }
-
- pub fn x(&self) -> f32 {
- self.x
- }
- }
-}
-
-/// A fn item that calls the method on `Point` which changed
-pub mod fn_calls_changed_method {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn check() {
- let p = Point { x: 2.0, y: 2.0 };
- p.distance_from_origin();
- }
-}
-
-/// A fn item that calls a method on `Point` which did not change
-pub mod fn_calls_another_method {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn check() {
- let p = Point { x: 2.0, y: 2.0 };
- p.x();
- }
-}
-
-/// A fn item that makes an instance of `Point` but does not invoke methods
-pub mod fn_make_struct {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn make_origin() -> Point {
- Point { x: 2.0, y: 2.0 }
- }
-}
-
-/// A fn item that reads fields from `Point` but does not invoke methods
-pub mod fn_read_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn get_x(p: Point) -> f32 {
- p.x
- }
-}
-
-/// A fn item that writes to a field of `Point` but does not invoke methods
-pub mod fn_write_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn inc_x(p: &mut Point) {
- p.x += 1.0;
- }
-}
diff --git a/src/test/incremental/change_pub_inherent_method_sig/struct_point.rs b/src/test/incremental/change_pub_inherent_method_sig/struct_point.rs
deleted file mode 100644
index 0a6729567..000000000
--- a/src/test/incremental/change_pub_inherent_method_sig/struct_point.rs
+++ /dev/null
@@ -1,101 +0,0 @@
-// Test where we change the *signature* of a public, inherent method.
-
-// revisions:cfail1 cfail2
-// compile-flags: -Z query-dep-graph
-// build-pass
-
-#![crate_type = "rlib"]
-#![feature(rustc_attrs)]
-#![feature(stmt_expr_attributes)]
-#![allow(dead_code)]
-
-// These are expected to require codegen.
-#![rustc_partition_codegened(module="struct_point-point", cfg="cfail2")]
-#![rustc_partition_codegened(module="struct_point-fn_calls_changed_method", cfg="cfail2")]
-
-#![rustc_partition_reused(module="struct_point-fn_calls_another_method", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_make_struct", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_read_field", cfg="cfail2")]
-#![rustc_partition_reused(module="struct_point-fn_write_field", cfg="cfail2")]
-
-pub mod point {
- pub struct Point {
- pub x: f32,
- pub y: f32,
- }
-
- impl Point {
- #[cfg(cfail1)]
- pub fn distance_from_point(&self, p: Option<Point>) -> f32 {
- let p = p.unwrap_or(Point { x: 0.0, y: 0.0 });
- let x_diff = self.x - p.x;
- let y_diff = self.y - p.y;
- return x_diff * x_diff + y_diff * y_diff;
- }
-
- #[cfg(cfail2)]
- pub fn distance_from_point(&self, p: Option<&Point>) -> f32 {
- const ORIGIN: &Point = &Point { x: 0.0, y: 0.0 };
- let p = p.unwrap_or(ORIGIN);
- let x_diff = self.x - p.x;
- let y_diff = self.y - p.y;
- return x_diff * x_diff + y_diff * y_diff;
- }
-
- pub fn x(&self) -> f32 {
- self.x
- }
- }
-}
-
-/// A fn item that calls the method that was changed
-pub mod fn_calls_changed_method {
- use point::Point;
-
- #[rustc_clean(except="typeck,optimized_mir", cfg="cfail2")]
- pub fn check() {
- let p = Point { x: 2.0, y: 2.0 };
- p.distance_from_point(None);
- }
-}
-
-/// A fn item that calls a method that was not changed
-pub mod fn_calls_another_method {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn check() {
- let p = Point { x: 2.0, y: 2.0 };
- p.x();
- }
-}
-
-/// A fn item that makes an instance of `Point` but does not invoke methods
-pub mod fn_make_struct {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn make_origin() -> Point {
- Point { x: 2.0, y: 2.0 }
- }
-}
-
-/// A fn item that reads fields from `Point` but does not invoke methods
-pub mod fn_read_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn get_x(p: Point) -> f32 {
- p.x
- }
-}
-
-/// A fn item that writes to a field of `Point` but does not invoke methods
-pub mod fn_write_field {
- use point::Point;
-
- #[rustc_clean(cfg="cfail2")]
- pub fn inc_x(p: &mut Point) {
- p.x += 1.0;
- }
-}
diff --git a/src/test/incremental/change_symbol_export_status.rs b/src/test/incremental/change_symbol_export_status.rs
deleted file mode 100644
index dd3dce4e7..000000000
--- a/src/test/incremental/change_symbol_export_status.rs
+++ /dev/null
@@ -1,41 +0,0 @@
-// revisions: rpass1 rpass2 rpass3 rpass4
-// compile-flags: -Zquery-dep-graph
-// [rpass1]compile-flags: -Zincremental-ignore-spans
-// [rpass2]compile-flags: -Zincremental-ignore-spans
-// [rpass3]compile-flags: -Zincremental-relative-spans
-// [rpass4]compile-flags: -Zincremental-relative-spans
-
-#![feature(rustc_attrs)]
-#![rustc_partition_reused(module = "change_symbol_export_status-mod1", cfg = "rpass2")]
-#![rustc_partition_reused(module = "change_symbol_export_status-mod2", cfg = "rpass2")]
-#![rustc_partition_reused(module = "change_symbol_export_status-mod1", cfg = "rpass4")]
-#![rustc_partition_reused(module = "change_symbol_export_status-mod2", cfg = "rpass4")]
-
-// This test case makes sure that a change in symbol visibility is detected by
-// our dependency tracking. We do this by changing a module's visibility to
-// `private` in rpass2, causing the contained function to go from `default` to
-// `hidden` visibility.
-// The function is marked with #[no_mangle] so it is considered for exporting
-// even from an executable. Plain Rust functions are only exported from Rust
-// libraries, which our test infrastructure does not support.
-
-#[cfg(any(rpass1,rpass3))]
-pub mod mod1 {
- #[no_mangle]
- pub fn foo() {}
-}
-
-#[cfg(any(rpass2,rpass4))]
-mod mod1 {
- #[no_mangle]
- pub fn foo() {}
-}
-
-pub mod mod2 {
- #[no_mangle]
- pub fn bar() {}
-}
-
-fn main() {
- mod1::foo();
-}
diff --git a/src/test/incremental/commandline-args.rs b/src/test/incremental/commandline-args.rs
deleted file mode 100644
index 35b7183db..000000000
--- a/src/test/incremental/commandline-args.rs
+++ /dev/null
@@ -1,25 +0,0 @@
-// Test that changing a tracked commandline argument invalidates
-// the cache while changing an untracked one doesn't.
-
-// ignore-asmjs wasm2js does not support source maps yet
-// revisions:rpass1 rpass2 rpass3 rpass4
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-#![rustc_partition_codegened(module="commandline_args", cfg="rpass2")]
-#![rustc_partition_reused(module="commandline_args", cfg="rpass3")]
-#![rustc_partition_codegened(module="commandline_args", cfg="rpass4")]
-
-// Between revisions 1 and 2, we are changing the debuginfo-level, which should
-// invalidate the cache. Between revisions 2 and 3, we are adding `--verbose`
-// which should have no effect on the cache. Between revisions, we are adding
-// `--remap-path-prefix` which should invalidate the cache:
-//[rpass1] compile-flags: -C debuginfo=0
-//[rpass2] compile-flags: -C debuginfo=2
-//[rpass3] compile-flags: -C debuginfo=2 --verbose
-//[rpass4] compile-flags: -C debuginfo=2 --verbose --remap-path-prefix=/home/bors/rust=src
-
-pub fn main() {
- // empty
-}
diff --git a/src/test/incremental/const-generics/hash-tyvid-regression-1.rs b/src/test/incremental/const-generics/hash-tyvid-regression-1.rs
deleted file mode 100644
index 5ff7b19d8..000000000
--- a/src/test/incremental/const-generics/hash-tyvid-regression-1.rs
+++ /dev/null
@@ -1,16 +0,0 @@
-// revisions: cfail
-#![feature(generic_const_exprs, adt_const_params)]
-#![allow(incomplete_features)]
-// regression test for #77650
-fn c<T, const N: std::num::NonZeroUsize>()
-where
- [T; N.get()]: Sized,
-{
- use std::convert::TryFrom;
- <[T; N.get()]>::try_from(())
- //~^ error: the trait bound
- //~| error: the trait bound
- //~| error: mismatched types
-}
-
-fn main() {}
diff --git a/src/test/incremental/const-generics/hash-tyvid-regression-2.rs b/src/test/incremental/const-generics/hash-tyvid-regression-2.rs
deleted file mode 100644
index 5cdd43cd7..000000000
--- a/src/test/incremental/const-generics/hash-tyvid-regression-2.rs
+++ /dev/null
@@ -1,18 +0,0 @@
-// revisions: cfail
-#![feature(generic_const_exprs, adt_const_params)]
-#![allow(incomplete_features)]
-// regression test for #77650
-struct C<T, const N: core::num::NonZeroUsize>([T; N.get()])
-where
- [T; N.get()]: Sized;
-impl<'a, const N: core::num::NonZeroUsize, A, B: PartialEq<A>> PartialEq<&'a [A]> for C<B, N>
-where
- [B; N.get()]: Sized,
-{
- fn eq(&self, other: &&'a [A]) -> bool {
- self.0 == other
- //~^ error: can't compare
- }
-}
-
-fn main() {}
diff --git a/src/test/incremental/const-generics/hash-tyvid-regression-3.rs b/src/test/incremental/const-generics/hash-tyvid-regression-3.rs
deleted file mode 100644
index 61f568f79..000000000
--- a/src/test/incremental/const-generics/hash-tyvid-regression-3.rs
+++ /dev/null
@@ -1,26 +0,0 @@
-// revisions: cfail
-#![feature(generic_const_exprs)]
-#![allow(incomplete_features)]
-// regression test for #79251
-struct Node<const D: usize>
-where
- SmallVec<{ D * 2 }>: ,
-{
- keys: SmallVec<{ D * 2 }>,
-}
-
-impl<const D: usize> Node<D>
-where
- SmallVec<{ D * 2 }>: ,
-{
- fn new() -> Self {
- let mut node = Node::new();
- node.keys.some_function();
- //~^ error: no method named
- node
- }
-}
-
-struct SmallVec<const D: usize> {}
-
-fn main() {}
diff --git a/src/test/incremental/const-generics/hash-tyvid-regression-4.rs b/src/test/incremental/const-generics/hash-tyvid-regression-4.rs
deleted file mode 100644
index 12e8ac7ab..000000000
--- a/src/test/incremental/const-generics/hash-tyvid-regression-4.rs
+++ /dev/null
@@ -1,40 +0,0 @@
-// revisions: cfail
-#![feature(generic_const_exprs)]
-#![allow(incomplete_features)]
-// regression test for #79251
-#[derive(Debug)]
-struct Node<K, const D: usize>
-where
- SmallVec<K, { D * 2 }>: ,
-{
- keys: SmallVec<K, { D * 2 }>,
-}
-
-impl<K, const D: usize> Node<K, D>
-where
- SmallVec<K, { D * 2 }>: ,
-{
- fn new() -> Self {
- panic!()
- }
-
- #[inline(never)]
- fn split(&mut self, i: usize, k: K, right: bool) -> Node<K, D> {
- let mut node = Node::new();
- node.keys.push(k);
- //~^ error: no method named
- node
- }
-}
-
-#[derive(Debug)]
-struct SmallVec<T, const D: usize> {
- data: [T; D],
-}
-impl<T, const D: usize> SmallVec<T, D> {
- fn new() -> Self {
- panic!()
- }
-}
-
-fn main() {}
diff --git a/src/test/incremental/const-generics/issue-61338.rs b/src/test/incremental/const-generics/issue-61338.rs
deleted file mode 100644
index e9d67fee2..000000000
--- a/src/test/incremental/const-generics/issue-61338.rs
+++ /dev/null
@@ -1,12 +0,0 @@
-// revisions:rpass1
-
-struct Struct<T>(T);
-
-impl<T, const N: usize> Struct<[T; N]> {
- fn f() {}
- fn g() { Self::f(); }
-}
-
-fn main() {
- Struct::<[u32; 3]>::g();
-}
diff --git a/src/test/incremental/const-generics/issue-61516.rs b/src/test/incremental/const-generics/issue-61516.rs
deleted file mode 100644
index c781484d1..000000000
--- a/src/test/incremental/const-generics/issue-61516.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-// revisions:rpass1
-
-struct FakeArray<T, const N: usize>(T);
-
-impl<T, const N: usize> FakeArray<T, N> {
- fn len(&self) -> usize {
- N
- }
-}
-
-fn main() {
- let fa = FakeArray::<u32, { 32 }>(1);
- assert_eq!(fa.len(), 32);
-}
diff --git a/src/test/incremental/const-generics/issue-62536.rs b/src/test/incremental/const-generics/issue-62536.rs
deleted file mode 100644
index 93c1dbf44..000000000
--- a/src/test/incremental/const-generics/issue-62536.rs
+++ /dev/null
@@ -1,9 +0,0 @@
-// revisions:cfail1
-struct S<T, const N: usize>([T; N]);
-
-fn f<T, const N: usize>(x: T) -> S<T, {N}> { panic!() }
-
-fn main() {
- f(0u8);
- //[cfail1]~^ ERROR type annotations needed
-}
diff --git a/src/test/incremental/const-generics/issue-64087.rs b/src/test/incremental/const-generics/issue-64087.rs
deleted file mode 100644
index 81c813531..000000000
--- a/src/test/incremental/const-generics/issue-64087.rs
+++ /dev/null
@@ -1,9 +0,0 @@
-// revisions:cfail1
-
-fn combinator<T, const S: usize>() -> [T; S] {}
-//[cfail1]~^ ERROR mismatched types
-
-fn main() {
- combinator().into_iter();
- //[cfail1]~^ ERROR type annotations needed
-}
diff --git a/src/test/incremental/const-generics/issue-65623.rs b/src/test/incremental/const-generics/issue-65623.rs
deleted file mode 100644
index 22bbcbcab..000000000
--- a/src/test/incremental/const-generics/issue-65623.rs
+++ /dev/null
@@ -1,12 +0,0 @@
-// revisions:rpass1
-pub struct Foo<T, const N: usize>([T; 0]);
-
-impl<T, const N: usize> Foo<T, {N}> {
- pub fn new() -> Self {
- Foo([])
- }
-}
-
-fn main() {
- let _: Foo<u32, 0> = Foo::new();
-}
diff --git a/src/test/incremental/const-generics/issue-68477.rs b/src/test/incremental/const-generics/issue-68477.rs
deleted file mode 100644
index 9e35cf93d..000000000
--- a/src/test/incremental/const-generics/issue-68477.rs
+++ /dev/null
@@ -1,25 +0,0 @@
-// edition:2018
-// revisions:rpass1
-
-// Needed to supply generic arguments to the anon const in `[(); FOO]`.
-#![feature(generic_const_exprs)]
-
-const FOO: usize = 1;
-
-struct Container<T> {
- val: std::marker::PhantomData<T>,
- blah: [(); FOO]
-}
-
-async fn dummy() {}
-
-async fn foo() {
- let a: Container<&'static ()>;
- dummy().await;
-}
-
-fn is_send<T: Send>(_: T) {}
-
-fn main() {
- is_send(foo());
-}
diff --git a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-1.rs b/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-1.rs
deleted file mode 100644
index 8262a2a21..000000000
--- a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-1.rs
+++ /dev/null
@@ -1,23 +0,0 @@
-// revisions: cfail
-#![feature(generic_const_exprs)]
-#![allow(incomplete_features, unused_braces)]
-
-trait Delegates<T> {}
-
-struct FileCap<const Op: bool> {}
-
-fn writes_to_path<C>(cap: &C)
-where
- C: Delegates<FileCap<{ false }>>,
-{
- writes_to_specific_path(&cap);
- //~^ error: the trait bound
-}
-
-fn writes_to_specific_path<C>(cap: &C)
-where
- C: Delegates<FileCap<{ false }>>,
-{
-}
-
-fn main() {}
diff --git a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-2.rs b/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-2.rs
deleted file mode 100644
index 92bbcba4b..000000000
--- a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-2.rs
+++ /dev/null
@@ -1,18 +0,0 @@
-// revisions: rpass
-#![feature(generic_const_exprs)]
-#![allow(incomplete_features)]
-
-struct Z;
-const fn one() -> usize {
- 1
-}
-
-fn from_a_to_b<T>(source: [u8; one()]) -> T {
- todo!()
-}
-
-fn not_main() {
- let _: &Z = from_a_to_b([0; 1]);
-}
-
-fn main() {}
diff --git a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-3.rs b/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-3.rs
deleted file mode 100644
index fc114f224..000000000
--- a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-77708-3.rs
+++ /dev/null
@@ -1,22 +0,0 @@
-// revisions: rpass
-#![feature(generic_const_exprs, adt_const_params)]
-#![allow(incomplete_features)]
-
-use std::{convert::TryFrom, num::NonZeroUsize};
-
-struct A<const N: NonZeroUsize>([u8; N.get()])
-where
- [u8; N.get()]: Sized;
-
-impl<'a, const N: NonZeroUsize> TryFrom<&'a [u8]> for A<N>
-where
- [u8; N.get()]: Sized,
-{
- type Error = ();
- fn try_from(slice: &'a [u8]) -> Result<A<N>, ()> {
- let _x = <&[u8; N.get()] as TryFrom<&[u8]>>::try_from(slice);
- unimplemented!();
- }
-}
-
-fn main() {}
diff --git a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-82034.rs b/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-82034.rs
deleted file mode 100644
index c05d8355c..000000000
--- a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-82034.rs
+++ /dev/null
@@ -1,34 +0,0 @@
-// revisions: rpass
-#![feature(generic_const_exprs)]
-#![allow(incomplete_features)]
-pub trait IsTrue {}
-pub trait IsFalse {}
-
-pub struct Assert<const CHECK: bool> {}
-
-impl IsTrue for Assert<true> {}
-impl IsFalse for Assert<false> {}
-
-pub struct SliceConstWriter<'a, const N: usize> {
- ptr: &'a mut [u8],
-}
-impl<'a, const N: usize> SliceConstWriter<'a, { N }> {
- pub fn from_slice(vec: &'a mut [u8]) -> Self {
- Self { ptr: vec }
- }
-
- pub fn convert<const NN: usize>(mut self) -> SliceConstWriter<'a, { NN }> {
- SliceConstWriter { ptr: self.ptr }
- }
-}
-
-impl<'a, const N: usize> SliceConstWriter<'a, { N }>
-where
- Assert<{ N >= 2 }>: IsTrue,
-{
- pub fn write_u8(mut self) -> SliceConstWriter<'a, { N - 2 }> {
- self.convert()
- }
-}
-
-fn main() {}
diff --git a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-85031-1.rs b/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-85031-1.rs
deleted file mode 100644
index 8886a556d..000000000
--- a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-85031-1.rs
+++ /dev/null
@@ -1,23 +0,0 @@
-// revisions: rpass
-#![feature(generic_const_exprs)]
-#![allow(incomplete_features)]
-
-pub struct Ref<'a, const NUM: usize>(&'a i32);
-
-impl<'a, const NUM: usize> Ref<'a, NUM> {
- pub fn foo<const A: usize>(r: Ref<'a, A>) -> Self
- where
- ([(); NUM - A], [(); A - NUM]): Sized,
- {
- Self::bar(r)
- }
-
- pub fn bar<const A: usize>(r: Ref<'a, A>) -> Self
- where
- ([(); NUM - A], [(); A - NUM]): Sized,
- {
- Self(r.0)
- }
-}
-
-fn main() {}
diff --git a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-85031-3.rs b/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-85031-3.rs
deleted file mode 100644
index 5b2f5edc8..000000000
--- a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-85031-3.rs
+++ /dev/null
@@ -1,25 +0,0 @@
-// revisions: rpass
-#![feature(generic_const_exprs)]
-#![allow(incomplete_features)]
-
-fn test<const SIZE: usize>() {}
-
-trait SomeTrait {
- const SIZE: usize;
-}
-
-struct A<'a, T> {
- some_ref: &'a str,
- _maker: core::marker::PhantomData<T>,
-}
-
-impl<'a, T: SomeTrait> A<'a, T>
-where
- [(); T::SIZE]: ,
-{
- fn call_test() {
- test::<{ T::SIZE }>();
- }
-}
-
-fn main() {}
diff --git a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-86953.rs b/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-86953.rs
deleted file mode 100644
index d659c5676..000000000
--- a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-86953.rs
+++ /dev/null
@@ -1,16 +0,0 @@
-// revisions: rpass
-#![feature(generic_const_exprs)]
-#![allow(incomplete_features)]
-
-struct Foo;
-impl<'a> std::ops::Add<&'a Foo> for Foo
-where
- [(); 0 + 0]: Sized,
-{
- type Output = ();
- fn add(self, _: &Foo) -> Self::Output {
- loop {}
- }
-}
-
-fn main() {}
diff --git a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-88022.rs b/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-88022.rs
deleted file mode 100644
index 5f5435ba9..000000000
--- a/src/test/incremental/const-generics/try_unify_abstract_const_regression_tests/issue-88022.rs
+++ /dev/null
@@ -1,28 +0,0 @@
-// revisions: cfail
-#![feature(generic_const_exprs)]
-#![allow(incomplete_features, unused_braces)]
-
-struct Buffer<T, const S: usize>
-where
- [(); { S * 2 }]: Default,
-{
- data: [T; { S * 2 }],
-}
-
-struct BufferIter<'a, T, const S: usize>(&'a Buffer<T, S>)
-where
- [(); { S * 2 }]: Default;
-
-impl<'a, T, const S: usize> Iterator for BufferIter<'a, T, S> {
- //~^ error: the trait bound
- //~^^ error: unconstrained generic constant
- type Item = &'a T;
-
- fn next(&mut self) -> Option<Self::Item> {
- //~^ error: the trait bound
- //~^^ error: unconstrained generic constant
- None
- }
-}
-
-fn main() {}
diff --git a/src/test/incremental/crate_hash_reorder.rs b/src/test/incremental/crate_hash_reorder.rs
deleted file mode 100644
index ca476b4d2..000000000
--- a/src/test/incremental/crate_hash_reorder.rs
+++ /dev/null
@@ -1,27 +0,0 @@
-// Test that the crate hash is not affected by reordering items.
-
-// revisions:rpass1 rpass2 rpass3
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-// Check that reordering otherwise identical items is not considered a
-// change at all.
-#[rustc_clean(cfg = "rpass2")]
-// But removing an item, naturally, is.
-#[rustc_clean(except="hir_crate", cfg = "rpass3")]
-#[cfg(rpass1)]
-pub struct X {
- pub x: u32,
-}
-
-pub struct Y {
- pub x: u32,
-}
-
-#[cfg(rpass2)]
-pub struct X {
- pub x: u32,
-}
-
-pub fn main() {}
diff --git a/src/test/incremental/cyclic-trait-hierarchy.rs b/src/test/incremental/cyclic-trait-hierarchy.rs
deleted file mode 100644
index b502e7207..000000000
--- a/src/test/incremental/cyclic-trait-hierarchy.rs
+++ /dev/null
@@ -1,13 +0,0 @@
-// Adapted from rust-lang/rust#58813
-
-// revisions: rpass1 cfail2
-
-#[cfg(rpass1)]
-pub trait T2 {}
-#[cfg(cfail2)]
-pub trait T2: T1 {}
-//[cfail2]~^ ERROR cycle detected when computing the super predicates of `T2`
-
-pub trait T1: T2 {}
-
-fn main() {}
diff --git a/src/test/incremental/delayed_span_bug.rs b/src/test/incremental/delayed_span_bug.rs
deleted file mode 100644
index 2529e531e..000000000
--- a/src/test/incremental/delayed_span_bug.rs
+++ /dev/null
@@ -1,8 +0,0 @@
-// 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/incremental/dirty_clean.rs b/src/test/incremental/dirty_clean.rs
deleted file mode 100644
index 11d999ab3..000000000
--- a/src/test/incremental/dirty_clean.rs
+++ /dev/null
@@ -1,49 +0,0 @@
-// revisions: rpass1 cfail2
-// compile-flags: -Z query-dep-graph
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-
-// Sanity check for the dirty-clean system. Give the opposite
-// annotations that we expect to see, so that we check that errors are
-// reported.
-
-fn main() { }
-
-mod x {
- #[cfg(rpass1)]
- pub fn x() -> usize {
- 22
- }
-
- #[cfg(cfail2)]
- pub fn x() -> u32 {
- 22
- }
-}
-
-mod y {
- use x;
-
- #[rustc_clean(
- except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of,fn_sig",
- cfg="cfail2",
- )]
- pub fn y() {
- //[cfail2]~^ ERROR `hir_owner(y)` should be dirty but is not
- //[cfail2]~| ERROR `hir_owner_nodes(y)` should be dirty but is not
- //[cfail2]~| ERROR `generics_of(y)` should be dirty but is not
- //[cfail2]~| ERROR `predicates_of(y)` should be dirty but is not
- //[cfail2]~| ERROR `type_of(y)` should be dirty but is not
- //[cfail2]~| ERROR `fn_sig(y)` should be dirty but is not
- //[cfail2]~| ERROR `typeck(y)` should be clean but is not
- x::x();
- }
-}
-
-mod z {
- #[rustc_clean(except="typeck", cfg="cfail2")]
- pub fn z() {
- //[cfail2]~^ ERROR `typeck(z)` should be dirty but is not
- }
-}
diff --git a/src/test/incremental/extern_static/issue-49153.rs b/src/test/incremental/extern_static/issue-49153.rs
deleted file mode 100644
index f1dbac288..000000000
--- a/src/test/incremental/extern_static/issue-49153.rs
+++ /dev/null
@@ -1,11 +0,0 @@
-// https://github.com/rust-lang/rust/issues/49153
-
-// revisions:rpass1 rpass2
-
-extern "C" {
- pub static __ImageBase: u8;
-}
-
-pub static FOO: &'static u8 = unsafe { &__ImageBase };
-
-fn main() {}
diff --git a/src/test/incremental/feature_gate.rs b/src/test/incremental/feature_gate.rs
deleted file mode 100644
index 5317a9962..000000000
--- a/src/test/incremental/feature_gate.rs
+++ /dev/null
@@ -1,13 +0,0 @@
-// This test makes sure that we detect changed feature gates.
-
-// revisions:rpass1 cfail2
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-#![cfg_attr(rpass1, feature(abi_unadjusted))]
-
-fn main() {
-}
-
-extern "unadjusted" fn foo() {}
-//[cfail2]~^ ERROR: unadjusted ABI is an implementation detail and perma-unstable
diff --git a/src/test/incremental/foreign.rs b/src/test/incremental/foreign.rs
deleted file mode 100644
index f46f92eb5..000000000
--- a/src/test/incremental/foreign.rs
+++ /dev/null
@@ -1,38 +0,0 @@
-// Test what happens we save incremental compilation state that makes
-// use of foreign items. This used to ICE (#34991).
-// ignore-sgx no libc
-
-// revisions: rpass1
-
-#![feature(rustc_private)]
-
-extern crate libc;
-
-use std::ffi::CString;
-
-mod mlibc {
- use libc::{c_char, c_long, c_longlong};
-
- extern "C" {
- pub fn atol(x: *const c_char) -> c_long;
- pub fn atoll(x: *const c_char) -> c_longlong;
- }
-}
-
-fn atol(s: String) -> isize {
- let c = CString::new(s).unwrap();
- unsafe { mlibc::atol(c.as_ptr()) as isize }
-}
-
-fn atoll(s: String) -> i64 {
- let c = CString::new(s).unwrap();
- unsafe { mlibc::atoll(c.as_ptr()) as i64 }
-}
-
-pub fn main() {
- assert_eq!(atol("1024".to_string()) * 10, atol("10240".to_string()));
- assert_eq!(
- (atoll("11111111111111111".to_string()) * 10),
- atoll("111111111111111110".to_string())
- );
-}
diff --git a/src/test/incremental/hash-module-order.rs b/src/test/incremental/hash-module-order.rs
deleted file mode 100644
index fe9af9eeb..000000000
--- a/src/test/incremental/hash-module-order.rs
+++ /dev/null
@@ -1,28 +0,0 @@
-// revisions: rpass1 rpass2
-// compile-flags: -Z incremental-ignore-spans -Z query-dep-graph
-
-// Tests that module hashing depends on the order of the items
-// (since the order is exposed through `Mod.item_ids`).
-// Changing the order of items (while keeping `Span`s the same)
-// should still result in `hir_owner` being invalidated.
-// Note that it's possible to keep the spans unchanged using
-// a proc-macro (e.g. producing the module via `quote!`)
-// but we use `-Z incremental-ignore-spans` for simplicity
-
-#![feature(rustc_attrs)]
-
-#[cfg(rpass1)]
-#[rustc_clean(cfg="rpass1",except="hir_owner")]
-mod foo {
- struct First;
- struct Second;
-}
-
-#[cfg(rpass2)]
-#[rustc_clean(cfg="rpass2",except="hir_owner")]
-mod foo {
- struct Second;
- struct First;
-}
-
-fn main() {}
diff --git a/src/test/incremental/hashes/call_expressions.rs b/src/test/incremental/hashes/call_expressions.rs
deleted file mode 100644
index f3a7722cd..000000000
--- a/src/test/incremental/hashes/call_expressions.rs
+++ /dev/null
@@ -1,200 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for function and method call expressions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-fn callee1(_x: u32, _y: i64) {}
-fn callee2(_x: u32, _y: i64) {}
-
-
-// Change Callee (Function)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_callee_function() {
- callee1(1, 2)
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_callee_function() {
- callee2(1, 2)
-}
-
-
-
-// Change Argument (Function)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_argument_function() {
- callee1(1, 2)
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_argument_function() {
- callee1(1, 3)
-}
-
-
-
-// Change Callee Indirectly (Function)
-mod change_callee_indirectly_function {
- #[cfg(any(cfail1,cfail4))]
- use super::callee1 as callee;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::callee2 as callee;
-
- #[rustc_clean(except="hir_owner_nodes,typeck", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner_nodes,typeck", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- pub fn change_callee_indirectly_function() {
- callee(1, 2)
- }
-}
-
-
-struct Struct;
-impl Struct {
- fn method1(&self, _x: char, _y: bool) {}
- fn method2(&self, _x: char, _y: bool) {}
-}
-
-// Change Callee (Method)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_callee_method() {
- let s = Struct;
- s.method1('x', true);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_callee_method() {
- let s = Struct;
- s.method2('x', true);
-}
-
-
-
-// Change Argument (Method)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_argument_method() {
- let s = Struct;
- s.method1('x', true);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_argument_method() {
- let s = Struct;
- s.method1('y', true);
-}
-
-
-
-// Change Callee (Method, UFCS)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_ufcs_callee_method() {
- let s = Struct;
- Struct::method1(&s, 'x', true);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_ufcs_callee_method() {
- let s = Struct;
- Struct::method2(&s, 'x', true);
-}
-
-
-
-// Change Argument (Method, UFCS)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_argument_method_ufcs() {
- let s = Struct;
- Struct::method1(&s, 'x', true);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_argument_method_ufcs() {
- let s = Struct;
- Struct::method1(&s, 'x',false);
-}
-
-
-
-// Change To UFCS
-#[cfg(any(cfail1,cfail4))]
-pub fn change_to_ufcs() {
- let s = Struct;
- s.method1('x', true); // ------
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-// One might think this would be expanded in the hir_owner_nodes/Mir, but it actually
-// results in slightly different hir_owner/Mir.
-pub fn change_to_ufcs() {
- let s = Struct;
- Struct::method1(&s, 'x', true);
-}
-
-
-struct Struct2;
-impl Struct2 {
- fn method1(&self, _x: char, _y: bool) {}
-}
-
-// Change UFCS Callee Indirectly
-pub mod change_ufcs_callee_indirectly {
- #[cfg(any(cfail1,cfail4))]
- use super::Struct as Struct;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::Struct2 as Struct;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,typeck")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,typeck")]
- #[rustc_clean(cfg="cfail6")]
- pub fn change_ufcs_callee_indirectly() {
- let s = Struct;
- Struct::method1(&s, 'q', false)
- }
-}
diff --git a/src/test/incremental/hashes/closure_expressions.rs b/src/test/incremental/hashes/closure_expressions.rs
deleted file mode 100644
index c769246b2..000000000
--- a/src/test/incremental/hashes/closure_expressions.rs
+++ /dev/null
@@ -1,127 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for closure expression.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-
-// Change closure body
-#[cfg(any(cfail1,cfail4))]
-pub fn change_closure_body() {
- let _ = || 1u32;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_closure_body() {
- let _ = || 3u32;
-}
-
-
-
-// Add parameter
-#[cfg(any(cfail1,cfail4))]
-pub fn add_parameter() {
- let x = 0u32;
- let _ = | | x + 1;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_parameter() {
- let x = 0u32;
- let _ = |x: u32| x + 1;
-}
-
-
-
-// Change parameter pattern
-#[cfg(any(cfail1,cfail4))]
-pub fn change_parameter_pattern() {
- let _ = | x : (u32,)| x;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_parameter_pattern() {
- let _ = |(x,): (u32,)| x;
-}
-
-
-
-// Add `move` to closure
-#[cfg(any(cfail1,cfail4))]
-pub fn add_move() {
- let _ = || 1;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_move() {
- let _ = move || 1;
-}
-
-
-
-// Add type ascription to parameter
-#[cfg(any(cfail1,cfail4))]
-pub fn add_type_ascription_to_parameter() {
- let closure = |x | x + 1u32;
- let _: u32 = closure(1);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2", except = "hir_owner_nodes, typeck")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5", except = "hir_owner_nodes, typeck")]
-#[rustc_clean(cfg = "cfail6")]
-pub fn add_type_ascription_to_parameter() {
- let closure = |x: u32| x + 1u32;
- let _: u32 = closure(1);
-}
-
-
-
-// Change parameter type
-#[cfg(any(cfail1,cfail4))]
-pub fn change_parameter_type() {
- let closure = |x: u32| (x as u64) + 1;
- let _ = closure(1);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_parameter_type() {
- let closure = |x: u16| (x as u64) + 1;
- let _ = closure(1);
-}
diff --git a/src/test/incremental/hashes/consts.rs b/src/test/incremental/hashes/consts.rs
deleted file mode 100644
index eaef63386..000000000
--- a/src/test/incremental/hashes/consts.rs
+++ /dev/null
@@ -1,109 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for consts.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3
-// compile-flags: -Z query-dep-graph -O
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-
-// Change const visibility
-#[cfg(cfail1)]
-const CONST_VISIBILITY: u8 = 0;
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-pub const CONST_VISIBILITY: u8 = 0;
-
-
-// Change type from i32 to u32
-#[cfg(cfail1)]
-const CONST_CHANGE_TYPE_1: i32 = 0;
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-const CONST_CHANGE_TYPE_1: u32 = 0;
-
-
-// Change type from Option<u32> to Option<u64>
-#[cfg(cfail1)]
-const CONST_CHANGE_TYPE_2: Option<u32> = None;
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-const CONST_CHANGE_TYPE_2: Option<u64> = None;
-
-
-// Change value between simple literals
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-const CONST_CHANGE_VALUE_1: i16 = {
- #[cfg(cfail1)]
- { 1 }
-
- #[cfg(not(cfail1))]
- { 2 }
-};
-
-
-// Change value between expressions
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-const CONST_CHANGE_VALUE_2: i16 = {
- #[cfg(cfail1)]
- { 1 + 1 }
-
- #[cfg(not(cfail1))]
- { 1 + 2 }
-};
-
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-const CONST_CHANGE_VALUE_3: i16 = {
- #[cfg(cfail1)]
- { 2 + 3 }
-
- #[cfg(not(cfail1))]
- { 2 * 3 }
-};
-
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-const CONST_CHANGE_VALUE_4: i16 = {
- #[cfg(cfail1)]
- { 1 + 2 * 3 }
-
- #[cfg(not(cfail1))]
- { 1 + 2 * 4 }
-};
-
-
-// Change type indirectly
-struct ReferencedType1;
-struct ReferencedType2;
-
-mod const_change_type_indirectly {
- #[cfg(cfail1)]
- use super::ReferencedType1 as Type;
-
- #[cfg(not(cfail1))]
- use super::ReferencedType2 as Type;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
- #[rustc_clean(cfg="cfail3")]
- const CONST_CHANGE_TYPE_INDIRECTLY_1: Type = Type;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
- #[rustc_clean(cfg="cfail3")]
- const CONST_CHANGE_TYPE_INDIRECTLY_2: Option<Type> = None;
-}
diff --git a/src/test/incremental/hashes/enum_constructors.rs b/src/test/incremental/hashes/enum_constructors.rs
deleted file mode 100644
index 70ef10645..000000000
--- a/src/test/incremental/hashes/enum_constructors.rs
+++ /dev/null
@@ -1,390 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for struct constructor expressions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-
-pub enum Enum {
- Struct {
- x: i32,
- y: i64,
- z: i16,
- },
- Tuple(i32, i64, i16)
-}
-
-// Change field value (struct-like) -----------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_field_value_struct_like() -> Enum {
- Enum::Struct {
- x: 0,
- y: 1,
- z: 2,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_field_value_struct_like() -> Enum {
- Enum::Struct {
- x: 0,
- y: 2,
- z: 2,
- }
-}
-
-
-
-// Change field order (struct-like) -----------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_field_order_struct_like() -> Enum {
- Enum::Struct {
- x: 3,
- y: 4,
- z: 5,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-// FIXME(michaelwoerister):Interesting. I would have thought that that changes the MIR. And it
-// would if it were not all constants
-pub fn change_field_order_struct_like() -> Enum {
- Enum::Struct {
- y: 4,
- x: 3,
- z: 5,
- }
-}
-
-
-pub enum Enum2 {
- Struct {
- x: i8,
- y: i8,
- z: i8,
- },
- Struct2 {
- x: i8,
- y: i8,
- z: i8,
- },
- Tuple(u16, u16, u16),
- Tuple2(u64, u64, u64),
-}
-
-// Change constructor path (struct-like) ------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_constructor_path_struct_like() {
- let _ = Enum ::Struct {
- x: 0,
- y: 1,
- z: 2,
- };
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_constructor_path_struct_like() {
- let _ = Enum2::Struct {
- x: 0,
- y: 1,
- z: 2,
- };
-}
-
-
-
-// Change variant (regular struct) ------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_constructor_variant_struct_like() {
- let _ = Enum2::Struct {
- x: 0,
- y: 1,
- z: 2,
- };
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_constructor_variant_struct_like() {
- let _ = Enum2::Struct2 {
- x: 0,
- y: 1,
- z: 2,
- };
-}
-
-
-// Change constructor path indirectly (struct-like) -------------------------
-pub mod change_constructor_path_indirectly_struct_like {
- #[cfg(any(cfail1,cfail4))]
- use super::Enum as TheEnum;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::Enum2 as TheEnum;
-
- #[rustc_clean(
- cfg="cfail2",
- except="fn_sig,hir_owner,hir_owner_nodes,optimized_mir,\
- typeck"
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- cfg="cfail5",
- except="fn_sig,hir_owner,hir_owner_nodes,optimized_mir,\
- typeck"
- )]
- #[rustc_clean(cfg="cfail6")]
- pub fn function() -> TheEnum {
- TheEnum::Struct {
- x: 0,
- y: 1,
- z: 2,
- }
- }
-}
-
-
-// Change constructor variant indirectly (struct-like) ---------------------------
-pub mod change_constructor_variant_indirectly_struct_like {
- use super::Enum2;
- #[cfg(any(cfail1,cfail4))]
- use super::Enum2::Struct as Variant;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::Enum2::Struct2 as Variant;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
- #[rustc_clean(cfg="cfail6")]
- pub fn function() -> Enum2 {
- Variant {
- x: 0,
- y: 1,
- z: 2,
- }
- }
-}
-
-
-// Change field value (tuple-like) -------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_field_value_tuple_like() -> Enum {
- Enum::Tuple(0, 1, 2)
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_field_value_tuple_like() -> Enum {
- Enum::Tuple(0, 1, 3)
-}
-
-
-
-// Change constructor path (tuple-like) --------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_constructor_path_tuple_like() {
- let _ = Enum ::Tuple(0, 1, 2);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(
- cfg="cfail2",
- except="hir_owner_nodes,typeck"
-)]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(
- cfg="cfail5",
- except="hir_owner_nodes,typeck"
-)]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_constructor_path_tuple_like() {
- let _ = Enum2::Tuple(0, 1, 2);
-}
-
-
-
-// Change constructor variant (tuple-like) --------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_constructor_variant_tuple_like() {
- let _ = Enum2::Tuple (0, 1, 2);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(
- cfg="cfail2",
- except="hir_owner_nodes,typeck"
-)]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(
- cfg="cfail5",
- except="hir_owner_nodes,typeck"
-)]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_constructor_variant_tuple_like() {
- let _ = Enum2::Tuple2(0, 1, 2);
-}
-
-
-// Change constructor path indirectly (tuple-like) ---------------------------
-pub mod change_constructor_path_indirectly_tuple_like {
- #[cfg(any(cfail1,cfail4))]
- use super::Enum as TheEnum;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::Enum2 as TheEnum;
-
- #[rustc_clean(
- cfg="cfail2",
- except="fn_sig,hir_owner,hir_owner_nodes,optimized_mir,\
- typeck"
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- cfg="cfail5",
- except="fn_sig,hir_owner,hir_owner_nodes,optimized_mir,\
- typeck"
- )]
- #[rustc_clean(cfg="cfail6")]
- pub fn function() -> TheEnum {
- TheEnum::Tuple(0, 1, 2)
- }
-}
-
-
-
-// Change constructor variant indirectly (tuple-like) ---------------------------
-pub mod change_constructor_variant_indirectly_tuple_like {
- use super::Enum2;
- #[cfg(any(cfail1,cfail4))]
- use super::Enum2::Tuple as Variant;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::Enum2::Tuple2 as Variant;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,typeck")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,typeck")]
- #[rustc_clean(cfg="cfail6")]
- pub fn function() -> Enum2 {
- Variant(0, 1, 2)
- }
-}
-
-
-pub enum Clike {
- A,
- B,
- C
-}
-
-pub enum Clike2 {
- B,
- C,
- D
-}
-
-// Change constructor path (C-like) --------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_constructor_path_c_like() {
- let _x = Clike ::B;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_constructor_path_c_like() {
- let _x = Clike2::B;
-}
-
-
-
-// Change constructor variant (C-like) --------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_constructor_variant_c_like() {
- let _x = Clike::A;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_constructor_variant_c_like() {
- let _x = Clike::C;
-}
-
-
-// Change constructor path indirectly (C-like) ---------------------------
-pub mod change_constructor_path_indirectly_c_like {
- #[cfg(any(cfail1,cfail4))]
- use super::Clike as TheEnum;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::Clike2 as TheEnum;
-
- #[rustc_clean(
- cfg="cfail2",
- except="fn_sig,hir_owner,hir_owner_nodes,optimized_mir,\
- typeck"
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- cfg="cfail5",
- except="fn_sig,hir_owner,hir_owner_nodes,optimized_mir,\
- typeck"
- )]
- #[rustc_clean(cfg="cfail6")]
- pub fn function() -> TheEnum {
- TheEnum::B
- }
-}
-
-
-
-// Change constructor variant indirectly (C-like) ---------------------------
-pub mod change_constructor_variant_indirectly_c_like {
- use super::Clike;
- #[cfg(any(cfail1,cfail4))]
- use super::Clike::A as Variant;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::Clike::B as Variant;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
- #[rustc_clean(cfg="cfail6")]
- pub fn function() -> Clike {
- Variant
- }
-}
diff --git a/src/test/incremental/hashes/enum_defs.rs b/src/test/incremental/hashes/enum_defs.rs
deleted file mode 100644
index 0f8898c38..000000000
--- a/src/test/incremental/hashes/enum_defs.rs
+++ /dev/null
@@ -1,718 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for enum definitions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// We also test the ICH for enum definitions exported in metadata. Same as
-// above, we want to make sure that the change between rev1 and rev2 also
-// results in a change of the ICH for the enum's metadata, and that it stays
-// the same between rev2 and rev3.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![feature(stmt_expr_attributes)]
-#![crate_type="rlib"]
-
-
-
-// Change enum visibility -----------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumVisibility { A }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub enum EnumVisibility { A }
-
-
-
-// Change name of a c-style variant -------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumChangeNameCStyleVariant {
- Variant1,
- Variant2,
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumChangeNameCStyleVariant {
- Variant1,
- Variant2Changed,
-}
-
-
-
-// Change name of a tuple-style variant ---------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumChangeNameTupleStyleVariant {
- Variant1,
- Variant2(u32, f32),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumChangeNameTupleStyleVariant {
- Variant1,
- Variant2Changed(u32, f32),
-}
-
-
-
-// Change name of a struct-style variant --------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumChangeNameStructStyleVariant {
- Variant1,
- Variant2 { a: u32, b: f32 },
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumChangeNameStructStyleVariant {
- Variant1,
- Variant2Changed { a: u32, b: f32 },
-}
-
-
-
-// Change the value of a c-style variant --------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumChangeValueCStyleVariant0 {
- Variant1,
- Variant2 = 11,
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumChangeValueCStyleVariant0 {
- Variant1,
- Variant2 = 22,
-}
-
-#[cfg(any(cfail1,cfail4))]
-enum EnumChangeValueCStyleVariant1 {
- Variant1,
- Variant2,
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumChangeValueCStyleVariant1 {
- Variant1,
- Variant2 = 11,
-}
-
-
-
-// Add a c-style variant ------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddCStyleVariant {
- Variant1,
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddCStyleVariant {
- Variant1,
- Variant2,
-}
-
-
-
-// Remove a c-style variant ---------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumRemoveCStyleVariant {
- Variant1,
- Variant2,
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumRemoveCStyleVariant {
- Variant1,
-}
-
-
-
-// Add a tuple-style variant --------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddTupleStyleVariant {
- Variant1,
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddTupleStyleVariant {
- Variant1,
- Variant2(u32, f32),
-}
-
-
-
-// Remove a tuple-style variant -----------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumRemoveTupleStyleVariant {
- Variant1,
- Variant2(u32, f32),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumRemoveTupleStyleVariant {
- Variant1,
-}
-
-
-
-// Add a struct-style variant -------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddStructStyleVariant {
- Variant1,
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddStructStyleVariant {
- Variant1,
- Variant2 { a: u32, b: f32 },
-}
-
-
-
-// Remove a struct-style variant ----------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumRemoveStructStyleVariant {
- Variant1,
- Variant2 { a: u32, b: f32 },
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumRemoveStructStyleVariant {
- Variant1,
-}
-
-
-
-// Change the type of a field in a tuple-style variant ------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumChangeFieldTypeTupleStyleVariant {
- Variant1(u32, u32),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumChangeFieldTypeTupleStyleVariant {
- Variant1(u32,
- u64),
-}
-
-
-
-// Change the type of a field in a struct-style variant -----------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumChangeFieldTypeStructStyleVariant {
- Variant1,
- Variant2 { a: u32, b: u32 },
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumChangeFieldTypeStructStyleVariant {
- Variant1,
- Variant2 {
- a: u32,
- b: u64
- },
-}
-
-
-
-// Change the name of a field in a struct-style variant -----------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumChangeFieldNameStructStyleVariant {
- Variant1 { a: u32, b: u32 },
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumChangeFieldNameStructStyleVariant {
- Variant1 { a: u32, c: u32 },
-}
-
-
-
-// Change order of fields in a tuple-style variant ----------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumChangeOrderTupleStyleVariant {
- Variant1(u32, u64),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumChangeOrderTupleStyleVariant {
- Variant1(
- u64,
- u32),
-}
-
-
-
-// Change order of fields in a struct-style variant ---------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumChangeFieldOrderStructStyleVariant {
- Variant1 { a: u32, b: f32 },
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumChangeFieldOrderStructStyleVariant {
- Variant1 { b: f32, a: u32 },
-}
-
-
-
-// Add a field to a tuple-style variant ---------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddFieldTupleStyleVariant {
- Variant1(u32, u32),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddFieldTupleStyleVariant {
- Variant1(u32, u32, u32),
-}
-
-
-
-// Add a field to a struct-style variant --------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddFieldStructStyleVariant {
- Variant1 { a: u32, b: u32 },
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddFieldStructStyleVariant {
- Variant1 { a: u32, b: u32, c: u32 },
-}
-
-
-
-// Add #[must_use] to the enum ------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddMustUse {
- Variant1,
- Variant2,
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-#[must_use]
-enum EnumAddMustUse {
- Variant1,
- Variant2,
-}
-
-
-
-// Add #[repr(C)] to the enum -------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddReprC {
- Variant1,
- Variant2,
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="type_of")]
-#[rustc_clean(cfg="cfail6")]
-#[repr(C)]
-enum EnumAddReprC {
- Variant1,
- Variant2,
-}
-
-
-
-// Change the name of a type parameter ----------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumChangeNameOfTypeParameter<S> {
- Variant1(S),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumChangeNameOfTypeParameter<T> {
- Variant1(T),
-}
-
-
-
-// Add a type parameter ------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddTypeParameter<S> {
- Variant1(S),
- Variant2(S),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddTypeParameter<S, T> {
- Variant1(S),
- Variant2(T),
-}
-
-
-
-// Change the name of a lifetime parameter ------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumChangeNameOfLifetimeParameter<'a> {
- Variant1(&'a u32),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,generics_of,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,generics_of,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumChangeNameOfLifetimeParameter<'b> {
- Variant1(&'b u32),
-}
-
-
-
-// Add a lifetime parameter ---------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddLifetimeParameter<'a> {
- Variant1(&'a u32),
- Variant2(&'a u32),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,generics_of,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,generics_of,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddLifetimeParameter<'a, 'b> {
- Variant1(&'a u32),
- Variant2(&'b u32),
-}
-
-
-
-// Add a lifetime bound to a lifetime parameter -------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddLifetimeParameterBound<'a, 'b> {
- Variant1(&'a u32),
- Variant2(&'b u32),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,predicates_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,predicates_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddLifetimeParameterBound<'a, 'b: 'a> {
- Variant1(&'a u32),
- Variant2(&'b u32),
-}
-
-// Add a lifetime bound to a type parameter -----------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddLifetimeBoundToParameter<'a, T> {
- Variant1(T),
- Variant2(&'a u32),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,predicates_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,predicates_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddLifetimeBoundToParameter<'a, T: 'a> {
- Variant1(T),
- Variant2(&'a u32),
-}
-
-
-
-// Add a trait bound to a type parameter --------------------------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddTraitBound<S> {
- Variant1(S),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddTraitBound<T: Sync> {
- Variant1(T),
-}
-
-
-
-// Add a lifetime bound to a lifetime parameter in where clause ---------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddLifetimeParameterBoundWhere<'a, 'b> {
- Variant1(&'a u32),
- Variant2(&'b u32),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,predicates_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,predicates_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddLifetimeParameterBoundWhere<'a, 'b> where 'b: 'a {
- Variant1(&'a u32),
- Variant2(&'b u32),
-}
-
-
-
-// Add a lifetime bound to a type parameter in where clause -------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddLifetimeBoundToParameterWhere<'a, T> {
- Variant1(T),
- Variant2(&'a u32),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,predicates_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,predicates_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddLifetimeBoundToParameterWhere<'a, T> where T: 'a {
- Variant1(T),
- Variant2(&'a u32),
-}
-
-
-
-// Add a trait bound to a type parameter in where clause ----------------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumAddTraitBoundWhere<S> {
- Variant1(S),
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumAddTraitBoundWhere<T> where T: Sync {
- Variant1(T),
-}
-
-
-
-// In an enum with two variants, swap usage of type parameters ----------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumSwapUsageTypeParameters<A, B> {
- Variant1 { a: A },
- Variant2 { a: B },
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumSwapUsageTypeParameters<A, B> {
- Variant1 {
- a: B
- },
- Variant2 {
- a: A
- },
-}
-
-
-
-// In an enum with two variants, swap usage of lifetime parameters ------------
-#[cfg(any(cfail1,cfail4))]
-enum EnumSwapUsageLifetimeParameters<'a, 'b> {
- Variant1 { a: &'a u32 },
- Variant2 { b: &'b u32 },
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-enum EnumSwapUsageLifetimeParameters<'a, 'b> {
- Variant1 {
- a: &'b u32
- },
- Variant2 {
- b: &'a u32
- },
-}
-
-
-
-struct ReferencedType1;
-struct ReferencedType2;
-
-
-
-// Change field type in tuple-style variant indirectly by modifying a use statement
-mod change_field_type_indirectly_tuple_style {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedType1 as FieldType;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedType2 as FieldType;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
- #[rustc_clean(cfg="cfail6")]
- enum TupleStyle {
- Variant1(
- FieldType
- )
- }
-}
-
-
-
-// Change field type in record-style variant indirectly by modifying a use statement
-mod change_field_type_indirectly_struct_style {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedType1 as FieldType;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedType2 as FieldType;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
- #[rustc_clean(cfg="cfail6")]
- enum StructStyle {
- Variant1 {
- a: FieldType
- }
- }
-}
-
-
-
-trait ReferencedTrait1 {}
-trait ReferencedTrait2 {}
-
-
-
-// Change trait bound of type parameter indirectly by modifying a use statement
-mod change_trait_bound_indirectly {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedTrait1 as Trait;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedTrait2 as Trait;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,predicates_of")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,predicates_of")]
- #[rustc_clean(cfg="cfail6")]
- enum Enum<T: Trait> {
- Variant1(T)
- }
-}
-
-
-
-// Change trait bound of type parameter in where clause indirectly by modifying a use statement
-mod change_trait_bound_indirectly_where {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedTrait1 as Trait;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedTrait2 as Trait;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,predicates_of")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,predicates_of")]
- #[rustc_clean(cfg="cfail6")]
- enum Enum<T> where T: Trait {
- Variant1(T)
- }
-}
diff --git a/src/test/incremental/hashes/exported_vs_not.rs b/src/test/incremental/hashes/exported_vs_not.rs
deleted file mode 100644
index 87fd21fd1..000000000
--- a/src/test/incremental/hashes/exported_vs_not.rs
+++ /dev/null
@@ -1,75 +0,0 @@
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-// Case 1: The function body is not exported to metadata. If the body changes,
-// the hash of the hir_owner_nodes node should change, but not the hash of
-// either the hir_owner or the Metadata node.
-
-#[cfg(any(cfail1,cfail4))]
-pub fn body_not_exported_to_metadata() -> u32 {
- 1
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn body_not_exported_to_metadata() -> u32 {
- 2
-}
-
-
-
-// Case 2: The function body *is* exported to metadata because the function is
-// marked as #[inline]. Only the hash of the hir_owner depnode should be
-// unaffected by a change to the body.
-
-#[cfg(any(cfail1,cfail4))]
-#[inline]
-pub fn body_exported_to_metadata_because_of_inline() -> u32 {
- 1
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-#[inline]
-pub fn body_exported_to_metadata_because_of_inline() -> u32 {
- 2
-}
-
-
-
-// Case 2: The function body *is* exported to metadata because the function is
-// generic. Only the hash of the hir_owner depnode should be
-// unaffected by a change to the body.
-
-#[cfg(any(cfail1,cfail4))]
-#[inline]
-pub fn body_exported_to_metadata_because_of_generic() -> u32 {
- 1
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-#[inline]
-pub fn body_exported_to_metadata_because_of_generic() -> u32 {
- 2
-}
diff --git a/src/test/incremental/hashes/extern_mods.rs b/src/test/incremental/hashes/extern_mods.rs
deleted file mode 100644
index 3121abbea..000000000
--- a/src/test/incremental/hashes/extern_mods.rs
+++ /dev/null
@@ -1,224 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for `extern` modules.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![feature(unboxed_closures)]
-#![crate_type = "rlib"]
-
-// Change function name --------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-extern "C" {
- pub fn change_function_name1(c: i64) -> i32;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2", except = "hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5", except = "hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg = "cfail6")]
-extern "C" {
- pub fn change_function_name2(c: i64) -> i32;
-}
-
-// Change parameter name -------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-extern "C" {
- pub fn change_parameter_name(c: i64) -> i32;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5")]
-#[rustc_clean(cfg = "cfail6")]
-extern "C" {
- pub fn change_parameter_name(d: i64) -> i32;
-}
-
-// Change parameter type -------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-extern "C" {
- pub fn change_parameter_type(c: i64) -> i32;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5")]
-#[rustc_clean(cfg = "cfail6")]
-extern "C" {
- pub fn change_parameter_type(c: i32) -> i32;
-}
-
-// Change return type ----------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-extern "C" {
- pub fn change_return_type(c: i32) -> i32;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5")]
-#[rustc_clean(cfg = "cfail6")]
-extern "C" {
- pub fn change_return_type(c: i32) -> i8 ;
-}
-
-// Add parameter ---------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-extern "C" {
- pub fn add_parameter(c: i32 ) -> i32;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5")]
-#[rustc_clean(cfg = "cfail6")]
-extern "C" {
- pub fn add_parameter(c: i32, d: i32) -> i32;
-}
-
-// Add return type -------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-extern "C" {
- pub fn add_return_type(c: i32) ;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5")]
-#[rustc_clean(cfg = "cfail6")]
-extern "C" {
- pub fn add_return_type(c: i32) -> i32;
-}
-
-// Make function variadic ------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-extern "C" {
- pub fn make_function_variadic(c: i32 );
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5")]
-#[rustc_clean(cfg = "cfail6")]
-extern "C" {
- pub fn make_function_variadic(c: i32, ...);
-}
-
-// Change calling convention ---------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-extern "C" {
- pub fn change_calling_convention(c: (i32,));
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2", except = "hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5", except = "hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg = "cfail6")]
-extern "rust-call" {
- pub fn change_calling_convention(c: (i32,));
-}
-
-// Make function public --------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-extern "C" {
- fn make_function_public(c: i32);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5")]
-#[rustc_clean(cfg = "cfail6")]
-extern "C" {
- pub fn make_function_public(c: i32);
-}
-
-// Add function ----------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-extern "C" {
- pub fn add_function1(c: i32);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2", except = "hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5", except = "hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg = "cfail6")]
-extern "C" {
- pub fn add_function1(c: i32);
- pub fn add_function2();
-}
-
-// Change link-name ------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-#[link(name = "foo")]
-extern "C" {
- pub fn change_link_name(c: i32);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5")]
-#[rustc_clean(cfg = "cfail6")]
-#[link(name = "bar")]
-extern "C" {
- pub fn change_link_name(c: i32);
-}
-
-type c_i32 = i32;
-type c_i64 = i64;
-
-// Indirectly change parameter type --------------------------------------------
-mod indirectly_change_parameter_type {
- #[cfg(any(cfail1,cfail4))]
- use super::c_i32 as c_int;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::c_i64 as c_int;
-
- #[rustc_clean(cfg = "cfail2")]
- #[rustc_clean(cfg = "cfail3")]
- #[rustc_clean(cfg = "cfail5")]
- #[rustc_clean(cfg = "cfail6")]
- extern "C" {
- pub fn indirectly_change_parameter_type(c: c_int);
- }
-}
-
-// Indirectly change return type --------------------------------------------
-mod indirectly_change_return_type {
- #[cfg(any(cfail1,cfail4))]
- use super::c_i32 as c_int;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::c_i64 as c_int;
-
- #[rustc_clean(cfg = "cfail2")]
- #[rustc_clean(cfg = "cfail3")]
- #[rustc_clean(cfg = "cfail5")]
- #[rustc_clean(cfg = "cfail6")]
- extern "C" {
- pub fn indirectly_change_return_type() -> c_int;
- }
-}
diff --git a/src/test/incremental/hashes/for_loops.rs b/src/test/incremental/hashes/for_loops.rs
deleted file mode 100644
index 16d6af016..000000000
--- a/src/test/incremental/hashes/for_loops.rs
+++ /dev/null
@@ -1,302 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for `for` loops.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-
-// Change loop body ------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_loop_body() {
- let mut _x = 0;
- for _ in 0..1 {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_loop_body() {
- let mut _x = 0;
- for _ in 0..1 {
- _x = 2;
- break;
- }
-}
-
-
-
-// Change iteration variable name ----------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_iteration_variable_name() {
- let mut _x = 0;
- for _i in 0..1 {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_iteration_variable_name() {
- let mut _x = 0;
- for _a in 0..1 {
- _x = 1;
- break;
- }
-}
-
-
-
-// Change iteration variable pattern -------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_iteration_variable_pattern() {
- let mut _x = 0;
- for _i in &[0, 1, 2] {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_iteration_variable_pattern() {
- let mut _x = 0;
- for &_i in &[0, 1, 2] {
- _x = 1;
- break;
- }
-}
-
-
-
-// Change iterable -------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_iterable() {
- let mut _x = 0;
- for _ in &[0, 1, 2] {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, promoted_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, promoted_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_iterable() {
- let mut _x = 0;
- for _ in &[0, 1, 3] {
- _x = 1;
- break;
- }
-}
-
-
-
-// Add break -------------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_break() {
- let mut _x = 0;
- for _ in 0..1 {
- _x = 1;
- // ---
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_break() {
- let mut _x = 0;
- for _ in 0..1 {
- _x = 1;
- break;
- }
-}
-
-
-
-// Add loop label --------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_loop_label() {
- let mut _x = 0;
- for _ in 0..1 {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_loop_label() {
- let mut _x = 0;
- 'label: for _ in 0..1 {
- _x = 1;
- break;
- }
-}
-
-
-
-// Add loop label to break -----------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_loop_label_to_break() {
- let mut _x = 0;
- 'label: for _ in 0..1 {
- _x = 1;
- break ;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_loop_label_to_break() {
- let mut _x = 0;
- 'label: for _ in 0..1 {
- _x = 1;
- break 'label;
- }
-}
-
-
-
-// Change break label ----------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_break_label() {
- let mut _x = 0;
- 'outer: for _ in 0..1 {
- 'inner: for _ in 0..1 {
- _x = 1;
- break 'inner;
- }
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_break_label() {
- let mut _x = 0;
- 'outer: for _ in 0..1 {
- 'inner: for _ in 0..1 {
- _x = 1;
- break 'outer;
- }
- }
-}
-
-
-
-// Add loop label to continue --------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_loop_label_to_continue() {
- let mut _x = 0;
- 'label: for _ in 0..1 {
- _x = 1;
- continue ;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_loop_label_to_continue() {
- let mut _x = 0;
- 'label: for _ in 0..1 {
- _x = 1;
- continue 'label;
- }
-}
-
-
-
-// Change continue label ----------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_continue_label() {
- let mut _x = 0;
- 'outer: for _ in 0..1 {
- 'inner: for _ in 0..1 {
- _x = 1;
- continue 'inner;
- }
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_continue_label() {
- let mut _x = 0;
- 'outer: for _ in 0..1 {
- 'inner: for _ in 0..1 {
- _x = 1;
- continue 'outer;
- }
- }
-}
-
-
-
-// Change continue to break ----------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_continue_to_break() {
- let mut _x = 0;
- for _ in 0..1 {
- _x = 1;
- continue;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_continue_to_break() {
- let mut _x = 0;
- for _ in 0..1 {
- _x = 1;
- break ;
- }
-}
diff --git a/src/test/incremental/hashes/function_interfaces.rs b/src/test/incremental/hashes/function_interfaces.rs
deleted file mode 100644
index 3ff949fbb..000000000
--- a/src/test/incremental/hashes/function_interfaces.rs
+++ /dev/null
@@ -1,414 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for function interfaces.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(linkage)]
-#![feature(rustc_attrs)]
-#![crate_type = "rlib"]
-
-// Add Parameter ---------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn add_parameter() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(
- cfg = "cfail2",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
-)]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(
- cfg = "cfail5",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
-)]
-#[rustc_clean(cfg = "cfail6")]
-pub fn add_parameter(p: i32) {}
-
-// Add Return Type -------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn add_return_type() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2", except = "hir_owner, hir_owner_nodes")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5", except = "hir_owner, hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg = "cfail6")]
-pub fn add_return_type() -> () {}
-
-// Change Parameter Type -------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn type_of_parameter(p: i32) {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(
- cfg = "cfail2",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
-)]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(
- cfg = "cfail5",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
-)]
-#[rustc_clean(cfg = "cfail6")]
-pub fn type_of_parameter(p: i64) {}
-
-// Change Parameter Type Reference ---------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn type_of_parameter_ref(p: &i32) {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(
- cfg = "cfail2",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
-)]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(
- cfg = "cfail5",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
-)]
-#[rustc_clean(cfg = "cfail6")]
-pub fn type_of_parameter_ref(p: &mut i32) {}
-
-// Change Parameter Order ------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn order_of_parameters(p1: i32, p2: i64) {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(
- cfg = "cfail2",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
-)]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(
- cfg = "cfail5",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
-)]
-#[rustc_clean(cfg = "cfail6")]
-pub fn order_of_parameters(p2: i64, p1: i32) {}
-
-// Unsafe ----------------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn make_unsafe() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(
- cfg = "cfail2",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
-)]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(
- cfg = "cfail5",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
-)]
-#[rustc_clean(cfg = "cfail6")]
-pub unsafe fn make_unsafe() {}
-
-// Extern ----------------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn make_extern() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2", except = "hir_owner, hir_owner_nodes, typeck, fn_sig")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5", except = "hir_owner, hir_owner_nodes, typeck, fn_sig")]
-#[rustc_clean(cfg = "cfail6")]
-pub extern "C" fn make_extern() {}
-
-// Type Parameter --------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn type_parameter () {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(
- cfg = "cfail2",
- except = "hir_owner, hir_owner_nodes, generics_of, type_of, predicates_of"
-)]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(
- cfg = "cfail5",
- except = "hir_owner, hir_owner_nodes, generics_of, type_of, predicates_of"
-)]
-#[rustc_clean(cfg = "cfail6")]
-pub fn type_parameter<T>() {}
-
-// Lifetime Parameter ----------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn lifetime_parameter () {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2", except = "hir_owner, hir_owner_nodes, generics_of,fn_sig")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5", except = "hir_owner, hir_owner_nodes, generics_of,fn_sig")]
-#[rustc_clean(cfg = "cfail6")]
-pub fn lifetime_parameter<'a>() {}
-
-// Trait Bound -----------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn trait_bound<T >() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2", except = "hir_owner, hir_owner_nodes, predicates_of")]
-#[rustc_clean(cfg = "cfail3")]
-pub fn trait_bound<T: Eq>() {}
-
-// Builtin Bound ---------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn builtin_bound<T >() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2", except = "hir_owner, hir_owner_nodes, predicates_of")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5", except = "hir_owner, hir_owner_nodes, predicates_of")]
-#[rustc_clean(cfg = "cfail6")]
-pub fn builtin_bound<T: Send>() {}
-
-// Lifetime Bound --------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn lifetime_bound<'a, T>() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(
- cfg = "cfail2",
- except = "hir_owner, hir_owner_nodes, generics_of, type_of, predicates_of,fn_sig"
-)]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(
- cfg = "cfail5",
- except = "hir_owner, hir_owner_nodes, generics_of, type_of, predicates_of,fn_sig,optimized_mir"
-)]
-#[rustc_clean(cfg = "cfail6")]
-pub fn lifetime_bound<'a, T: 'a>() {}
-
-// Second Trait Bound ----------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn second_trait_bound<T: Eq >() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2", except = "hir_owner, hir_owner_nodes, predicates_of")]
-#[rustc_clean(cfg = "cfail3")]
-pub fn second_trait_bound<T: Eq + Clone>() {}
-
-// Second Builtin Bound --------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn second_builtin_bound<T: Send >() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2", except = "hir_owner, hir_owner_nodes, predicates_of")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5", except = "hir_owner, hir_owner_nodes, predicates_of")]
-#[rustc_clean(cfg = "cfail6")]
-pub fn second_builtin_bound<T: Send + Sized>() {}
-
-// Second Lifetime Bound -------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn second_lifetime_bound<'a, 'b, T: 'a >() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(
- cfg = "cfail2",
- except = "hir_owner, hir_owner_nodes, generics_of, type_of, predicates_of,fn_sig"
-)]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(
- cfg = "cfail5",
- except = "hir_owner, hir_owner_nodes, generics_of, type_of, predicates_of,fn_sig"
-)]
-#[rustc_clean(cfg = "cfail6")]
-pub fn second_lifetime_bound<'a, 'b, T: 'a + 'b>() {}
-
-// Inline ----------------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn inline() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5")]
-#[rustc_clean(cfg = "cfail6")]
-#[inline]
-pub fn inline() {}
-
-// Inline Never ----------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-#[inline(always)]
-pub fn inline_never() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5")]
-#[rustc_clean(cfg = "cfail6")]
-#[inline(never)]
-pub fn inline_never() {}
-
-// No Mangle -------------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn no_mangle() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5")]
-#[rustc_clean(cfg = "cfail6")]
-#[no_mangle]
-pub fn no_mangle() {}
-
-// Linkage ---------------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn linkage() {}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5")]
-#[rustc_clean(cfg = "cfail6")]
-#[linkage = "weak_odr"]
-pub fn linkage() {}
-
-// Return Impl Trait -----------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn return_impl_trait() -> i32 {
- 0
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2", except = "hir_owner, hir_owner_nodes, typeck, fn_sig, optimized_mir")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5", except = "hir_owner, hir_owner_nodes, typeck, fn_sig, optimized_mir")]
-#[rustc_clean(cfg = "cfail6")]
-pub fn return_impl_trait() -> impl Clone {
- 0
-}
-
-// Change Return Impl Trait ----------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub fn change_return_impl_trait() -> impl Clone {
- 0u32
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg = "cfail2")]
-#[rustc_clean(cfg = "cfail3")]
-#[rustc_clean(cfg = "cfail5", except = "typeck")]
-#[rustc_clean(cfg = "cfail6")]
-pub fn change_return_impl_trait() -> impl Copy {
- 0u32
-}
-
-// Change Return Type Indirectly -----------------------------------------------
-
-pub struct ReferencedType1;
-pub struct ReferencedType2;
-
-pub mod change_return_type_indirectly {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedType1 as ReturnType;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedType2 as ReturnType;
-
- #[rustc_clean(
- cfg = "cfail2",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
- )]
- #[rustc_clean(cfg = "cfail3")]
- #[rustc_clean(
- cfg = "cfail5",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
- )]
- #[rustc_clean(cfg = "cfail6")]
- pub fn indirect_return_type() -> ReturnType {
- ReturnType {}
- }
-}
-
-// Change Parameter Type Indirectly --------------------------------------------
-
-pub mod change_parameter_type_indirectly {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedType1 as ParameterType;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedType2 as ParameterType;
-
- #[rustc_clean(
- cfg = "cfail2",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
- )]
- #[rustc_clean(cfg = "cfail3")]
- #[rustc_clean(
- cfg = "cfail5",
- except = "hir_owner, hir_owner_nodes, optimized_mir, typeck, fn_sig"
- )]
- #[rustc_clean(cfg = "cfail6")]
- pub fn indirect_parameter_type(p: ParameterType) {}
-}
-
-// Change Trait Bound Indirectly -----------------------------------------------
-
-pub trait ReferencedTrait1 {}
-pub trait ReferencedTrait2 {}
-
-pub mod change_trait_bound_indirectly {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedTrait1 as Trait;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedTrait2 as Trait;
-
- #[rustc_clean(cfg = "cfail2", except = "hir_owner, hir_owner_nodes, predicates_of")]
- #[rustc_clean(cfg = "cfail3")]
- #[rustc_clean(cfg = "cfail5", except = "hir_owner, hir_owner_nodes, predicates_of")]
- #[rustc_clean(cfg = "cfail6")]
- pub fn indirect_trait_bound<T: Trait>(p: T) {}
-}
-
-// Change Trait Bound Indirectly In Where Clause -------------------------------
-
-pub mod change_trait_bound_indirectly_in_where_clause {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedTrait1 as Trait;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedTrait2 as Trait;
-
- #[rustc_clean(cfg = "cfail2", except = "hir_owner, hir_owner_nodes, predicates_of")]
- #[rustc_clean(cfg = "cfail3")]
- #[rustc_clean(cfg = "cfail5", except = "hir_owner, hir_owner_nodes, predicates_of")]
- #[rustc_clean(cfg = "cfail6")]
- pub fn indirect_trait_bound_where<T>(p: T)
- where
- T: Trait,
- {
- }
-}
diff --git a/src/test/incremental/hashes/if_expressions.rs b/src/test/incremental/hashes/if_expressions.rs
deleted file mode 100644
index cff557dcb..000000000
--- a/src/test/incremental/hashes/if_expressions.rs
+++ /dev/null
@@ -1,228 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for if expressions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-// Change condition (if)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_condition(x: bool) -> u32 {
- if x {
- return 1
- }
-
- return 0
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_condition(x: bool) -> u32 {
- if !x {
- return 1
- }
-
- return 0
-}
-
-// Change then branch (if)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_then_branch(x: bool) -> u32 {
- if x {
- return 1
- }
-
- return 0
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_then_branch(x: bool) -> u32 {
- if x {
- return 2
- }
-
- return 0
-}
-
-
-
-// Change else branch (if)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_else_branch(x: bool) -> u32 {
- if x {
- 1
- } else {
- 2
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_else_branch(x: bool) -> u32 {
- if x {
- 1
- } else {
- 3
- }
-}
-
-
-
-// Add else branch (if)
-#[cfg(any(cfail1,cfail4))]
-pub fn add_else_branch(x: bool) -> u32 {
- let mut ret = 1;
-
- if x {
- ret = 2;
- /*----*/
- }
-
- ret
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_else_branch(x: bool) -> u32 {
- let mut ret = 1;
-
- if x {
- ret = 2;
- } else {
- }
-
- ret
-}
-
-
-
-// Change condition (if let)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_condition_if_let(x: Option<u32>) -> u32 {
- if let Some(_x) = x {
- return 1
- }
-
- 0
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_condition_if_let(x: Option<u32>) -> u32 {
- if let Some(_ ) = x {
- return 1
- }
-
- 0
-}
-
-
-
-// Change then branch (if let)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_then_branch_if_let(x: Option<u32>) -> u32 {
- if let Some(x) = x {
- return x //-
- }
-
- 0
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_then_branch_if_let(x: Option<u32>) -> u32 {
- if let Some(x) = x {
- return x + 1
- }
-
- 0
-}
-
-
-
-// Change else branch (if let)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_else_branch_if_let(x: Option<u32>) -> u32 {
- if let Some(x) = x {
- x
- } else {
- 1
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_else_branch_if_let(x: Option<u32>) -> u32 {
- if let Some(x) = x {
- x
- } else {
- 2
- }
-}
-
-
-
-// Add else branch (if let)
-#[cfg(any(cfail1,cfail4))]
-pub fn add_else_branch_if_let(x: Option<u32>) -> u32 {
- let mut ret = 1;
-
- if let Some(x) = x {
- ret = x;
- /*----*/
- }
-
- ret
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_else_branch_if_let(x: Option<u32>) -> u32 {
- let mut ret = 1;
-
- if let Some(x) = x {
- ret = x;
- } else {
- }
-
- ret
-}
diff --git a/src/test/incremental/hashes/indexing_expressions.rs b/src/test/incremental/hashes/indexing_expressions.rs
deleted file mode 100644
index 9ef468472..000000000
--- a/src/test/incremental/hashes/indexing_expressions.rs
+++ /dev/null
@@ -1,137 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for indexing expression.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-// Change simple index
-#[cfg(any(cfail1,cfail4))]
-fn change_simple_index(slice: &[u32]) -> u32 {
- slice[3]
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-fn change_simple_index(slice: &[u32]) -> u32 {
- slice[4]
-}
-
-
-
-// Change lower bound
-#[cfg(any(cfail1,cfail4))]
-fn change_lower_bound(slice: &[u32]) -> &[u32] {
- &slice[3..5]
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-fn change_lower_bound(slice: &[u32]) -> &[u32] {
- &slice[2..5]
-}
-
-
-
-// Change upper bound
-#[cfg(any(cfail1,cfail4))]
-fn change_upper_bound(slice: &[u32]) -> &[u32] {
- &slice[3..5]
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-fn change_upper_bound(slice: &[u32]) -> &[u32] {
- &slice[3..7]
-}
-
-
-
-// Add lower bound
-#[cfg(any(cfail1,cfail4))]
-fn add_lower_bound(slice: &[u32]) -> &[u32] {
- &slice[ ..4]
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,typeck", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,typeck", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-fn add_lower_bound(slice: &[u32]) -> &[u32] {
- &slice[3..4]
-}
-
-
-
-// Add upper bound
-#[cfg(any(cfail1,cfail4))]
-fn add_upper_bound(slice: &[u32]) -> &[u32] {
- &slice[3.. ]
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,typeck", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,typeck", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-fn add_upper_bound(slice: &[u32]) -> &[u32] {
- &slice[3..7]
-}
-
-
-
-// Change mutability
-#[cfg(any(cfail1,cfail4))]
-fn change_mutability(slice: &mut [u32]) -> u32 {
- (&mut slice[3..5])[0]
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,typeck", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,typeck", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-fn change_mutability(slice: &mut [u32]) -> u32 {
- (& slice[3..5])[0]
-}
-
-
-
-// Exclusive to inclusive range
-#[cfg(any(cfail1,cfail4))]
-fn exclusive_to_inclusive_range(slice: &[u32]) -> &[u32] {
- &slice[3.. 7]
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,typeck", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,typeck", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-fn exclusive_to_inclusive_range(slice: &[u32]) -> &[u32] {
- &slice[3..=7]
-}
diff --git a/src/test/incremental/hashes/inherent_impls.rs b/src/test/incremental/hashes/inherent_impls.rs
deleted file mode 100644
index 1abbff32c..000000000
--- a/src/test/incremental/hashes/inherent_impls.rs
+++ /dev/null
@@ -1,790 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for let expressions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-pub struct Foo;
-
-// Change Method Name -----------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- pub fn method_name() { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,associated_item_def_ids")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,associated_item_def_ids")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail6")]
- pub fn method_name2() { }
-}
-
-// Change Method Body -----------------------------------------------------------
-//
-// This should affect the method itself, but not the impl.
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //--------------------------------------------------------------------------------------
- //--------------------------
- //--------------------------------------------------------------------------------------
- //--------------------------
- pub fn method_body() {
- // -----------------------
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,promoted_mir,typeck")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,promoted_mir,typeck")]
- #[rustc_clean(cfg="cfail6")]
- pub fn method_body() {
- println!("Hello, world!");
- }
-}
-
-
-// Change Method Body (inlined) ------------------------------------------------
-//
-// This should affect the method itself, but not the impl.
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //------------
- //---------------
- //------------------------------------------------------------
- //
- //--------------------------
- //------------
- //---------------
- //------------------------------------------------------------
- //
- //--------------------------
- #[inline]
- pub fn method_body_inlined() {
- // -----------------------
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(
- cfg="cfail2",
- except="hir_owner_nodes,optimized_mir,promoted_mir,typeck"
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- cfg="cfail5",
- except="hir_owner_nodes,optimized_mir,promoted_mir,typeck"
- )]
- #[rustc_clean(cfg="cfail6")]
- #[inline]
- pub fn method_body_inlined() {
- println!("Hello, world!");
- }
-}
-
-
-// Change Method Privacy -------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //--------------------------
- //--------------------------
- //--------------------------------------------------------------
- //--------------------------
- pub fn method_privacy() { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
- #[rustc_clean(cfg="cfail6")]
- fn method_privacy() { }
-}
-
-// Change Method Selfness -----------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //------------
- //---------------
- //---------------------------------------------------------------------------------------------
- //
- //--------------------------
- //------------
- //---------------
- //---------------------------------------------------------------------------------------------
- //
- //--------------------------
- pub fn method_selfness() { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(
- cfg="cfail2",
- except="hir_owner,hir_owner_nodes,fn_sig,generics_of,typeck,associated_item,optimized_mir",
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- cfg="cfail5",
- except="hir_owner,hir_owner_nodes,fn_sig,generics_of,typeck,associated_item,optimized_mir",
- )]
- #[rustc_clean(cfg="cfail6")]
- pub fn method_selfness(&self) { }
-}
-
-// Change Method Selfmutness ---------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //------------------------------------------------------------------------------------------
- //--------------------------
- //------------------------------------------------------------------------------------------
- //--------------------------
- pub fn method_selfmutness(& self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,fn_sig,typeck,optimized_mir")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,fn_sig,typeck,optimized_mir")]
- #[rustc_clean(cfg="cfail6")]
- pub fn method_selfmutness(&mut self) { }
-}
-
-
-
-// Add Method To Impl ----------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- pub fn add_method_to_impl1(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,associated_item_def_ids")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,associated_item_def_ids")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- pub fn add_method_to_impl1(&self) { }
-
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail6")]
- pub fn add_method_to_impl2(&self) { }
-}
-
-
-
-// Add Method Parameter --------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //------------------------------------------------------------------------------------------
- //--------------------------
- //------------------------------------------------------------------------------------------
- //--------------------------
- pub fn add_method_parameter(&self ) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,fn_sig,typeck,optimized_mir")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,fn_sig,typeck,optimized_mir")]
- #[rustc_clean(cfg="cfail6")]
- pub fn add_method_parameter(&self, _: i32) { }
-}
-
-
-
-// Change Method Parameter Name ------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //------------------------------------------------------------------
- //--------------------------
- //------------------------------------------------------------------
- //--------------------------
- pub fn change_method_parameter_name(&self, a: i64) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
- #[rustc_clean(cfg="cfail6")]
- pub fn change_method_parameter_name(&self, b: i64) { }
-}
-
-
-
-// Change Method Return Type ---------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //------------------------------------------------------------------------------------------
- //--------------------------
- //------------------------------------------------------------------------------------------
- //--------------------------
- pub fn change_method_return_type(&self) -> u16 { 0 }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,fn_sig,optimized_mir,typeck")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,fn_sig,optimized_mir,typeck")]
- #[rustc_clean(cfg="cfail6")]
- pub fn change_method_return_type(&self) -> u32 { 0 }
-}
-
-
-
-// Make Method #[inline] -------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //--------------------------
- //--------------------------
- //--------------------------
- //--------------------------
- //-------
- pub fn make_method_inline(&self) -> u8 { 0 }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- #[inline]
- pub fn make_method_inline(&self) -> u8 { 0 }
-}
-
-
-
-// Change order of parameters -------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //------------------------------------------------------------------
- //--------------------------
- //------------------------------------------------------------------
- //--------------------------
- pub fn change_method_parameter_order(&self, a: i64, b: i64) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
- #[rustc_clean(cfg="cfail6")]
- pub fn change_method_parameter_order(&self, b: i64, a: i64) { }
-}
-
-
-
-// Make method unsafe ----------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //------------------------------------------------------------------------------------------
- //--------------------------
- //------------------------------------------------------------------------------------------
- //--------------------------
- pub fn make_method_unsafe(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,fn_sig,typeck,optimized_mir")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,fn_sig,typeck,optimized_mir")]
- #[rustc_clean(cfg="cfail6")]
- pub unsafe fn make_method_unsafe(&self) { }
-}
-
-
-
-// Make method extern ----------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //----------------------------------------------------------------------------
- //--------------------------
- //----------------------------------------------------------------------------
- //--------------------------
- pub fn make_method_extern(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,fn_sig,typeck")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,fn_sig,typeck")]
- #[rustc_clean(cfg="cfail6")]
- pub extern "C" fn make_method_extern(&self) { }
-}
-
-
-
-// Change method calling convention --------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //----------------------------------------------------------------------------
- //--------------------------
- //----------------------------------------------------------------------------
- //--------------------------
- pub extern "C" fn change_method_calling_convention(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,fn_sig,typeck")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,fn_sig,typeck")]
- #[rustc_clean(cfg="cfail6")]
- pub extern "system" fn change_method_calling_convention(&self) { }
-}
-
-
-
-// Add Lifetime Parameter to Method --------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- // -----------------------------------------------------
- // ---------------------------------------------------------
- // ----------------------------------------------------------
- // -------------------------------------------------------
- // -------------------------------------------------------
- // --------------------------------------------------------
- // ----------------------------------------------------------
- // -----------------------------------------------------------
- // ----------------------------------------------------------
- // --------------------------------------------------------------------
- // -------------------------
- // --------------------------------------------------------------------------------
- // -------------------------
- pub fn add_lifetime_parameter_to_method (&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- // Warning: Note that `typeck` are coming up clean here.
- // The addition or removal of lifetime parameters that don't
- // appear in the arguments or fn body in any way does not, in
- // fact, affect the `typeck` in any semantic way (at least
- // as of this writing). **However,** altering the order of
- // lowering **can** cause it appear to affect the `typeck`:
- // if we lower generics before the body, then the `HirId` for
- // things in the body will be affected. So if you start to see
- // `typeck` appear dirty, that might be the cause. -nmatsakis
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,fn_sig")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,fn_sig,generics_of")]
- #[rustc_clean(cfg="cfail6")]
- pub fn add_lifetime_parameter_to_method<'a>(&self) { }
-}
-
-
-
-// Add Type Parameter To Method ------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- // -----------------------------------------------------
- // ---------------------------------------------------------------
- // -------------------------------------------------------------
- // -----------------------------------------------------
- // -------------------------------------------------------------
- // ---------------------------------------------------
- // ------------------------------------------------------------
- // ------------------------------------------------------
- // -------------------------------------------------
- // -----------
- // --------------
- // ----------------------------------------------------------------------
- //
- // -------------------------
- // -----------
- // --------------
- // ----------------------------------------------------------------------
- //
- // -------------------------
- pub fn add_type_parameter_to_method (&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- // Warning: Note that `typeck` are coming up clean here.
- // The addition or removal of type parameters that don't appear in
- // the arguments or fn body in any way does not, in fact, affect
- // the `typeck` in any semantic way (at least as of this
- // writing). **However,** altering the order of lowering **can**
- // cause it appear to affect the `typeck`: if we lower
- // generics before the body, then the `HirId` for things in the
- // body will be affected. So if you start to see `typeck`
- // appear dirty, that might be the cause. -nmatsakis
- #[rustc_clean(
- cfg="cfail2",
- except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of",
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- cfg="cfail5",
- except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of",
- )]
- #[rustc_clean(cfg="cfail6")]
- pub fn add_type_parameter_to_method<T>(&self) { }
-}
-
-
-
-// Add Lifetime Bound to Lifetime Parameter of Method --------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //------------
- //---------------
- //-----------------------------------------------------------------------------
- //
- //--------------------------
- //------------
- //---------------
- //-----------------------------------------------------------------------------
- //
- //--------------------------
- pub fn add_lifetime_bound_to_lifetime_param_of_method<'a, 'b >(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(
- cfg="cfail2",
- except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of,fn_sig"
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- cfg="cfail5",
- except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of,fn_sig"
- )]
- #[rustc_clean(cfg="cfail6")]
- pub fn add_lifetime_bound_to_lifetime_param_of_method<'a, 'b: 'a>(&self) { }
-}
-
-
-
-// Add Lifetime Bound to Type Parameter of Method ------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- // -----------------------------------------------------
- // ----------------------------------------------------------
- // -------------------------------------------------------------
- // -------------------------------------------------
- // -------------------------------------------------------------
- // ---------------------------------------------------
- // ------------------------------------------------------------
- // ------------------------------------------------------
- // -------------------------------------------------
- // -----------
- // --------------
- // ----------------------------------------------------------------------------
- //
- // -------------------------
- // -----------
- // --------------
- // ----------------------------------------------------------------------------
- //
- // -------------------------
- pub fn add_lifetime_bound_to_type_param_of_method<'a, T >(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- // Warning: Note that `typeck` are coming up clean here.
- // The addition or removal of bounds that don't appear in the
- // arguments or fn body in any way does not, in fact, affect the
- // `typeck` in any semantic way (at least as of this
- // writing). **However,** altering the order of lowering **can**
- // cause it appear to affect the `typeck`: if we lower
- // generics before the body, then the `HirId` for things in the
- // body will be affected. So if you start to see `typeck`
- // appear dirty, that might be the cause. -nmatsakis
- #[rustc_clean(
- cfg="cfail2",
- except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of,fn_sig"
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- cfg="cfail5",
- except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of,fn_sig"
- )]
- #[rustc_clean(cfg="cfail6")]
- pub fn add_lifetime_bound_to_type_param_of_method<'a, T: 'a>(&self) { }
-}
-
-
-
-// Add Trait Bound to Type Parameter of Method ------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- // -----------------------------------------------------
- // ----------------------------------------------------------
- // -------------------------------------------------------------
- // -------------------------------------------------
- // -------------------------------------------------------------
- // ---------------------------------------------------
- // ------------------------------------------------------------
- // ------------------------------------------------------
- // -------------------------------------------------
- // ---------------------------------------------------------------------------
- // -------------------------
- // ---------------------------------------------------------------------------
- // -------------------------
- pub fn add_trait_bound_to_type_param_of_method<T >(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- // Warning: Note that `typeck` are coming up clean here.
- // The addition or removal of bounds that don't appear in the
- // arguments or fn body in any way does not, in fact, affect the
- // `typeck` in any semantic way (at least as of this
- // writing). **However,** altering the order of lowering **can**
- // cause it appear to affect the `typeck`: if we lower
- // generics before the body, then the `HirId` for things in the
- // body will be affected. So if you start to see `typeck`
- // appear dirty, that might be the cause. -nmatsakis
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,predicates_of")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,predicates_of")]
- #[rustc_clean(cfg="cfail6")]
- pub fn add_trait_bound_to_type_param_of_method<T: Clone>(&self) { }
-}
-
-
-
-// Add #[no_mangle] to Method --------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Foo {
- //--------------------------
- //--------------------------
- //--------------------------
- //--------------------------
- //----------
- pub fn add_no_mangle_to_method(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl Foo {
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- #[no_mangle]
- pub fn add_no_mangle_to_method(&self) { }
-}
-
-
-
-struct Bar<T>(T);
-
-// Add Type Parameter To Impl --------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Bar<u32> {
- pub fn add_type_parameter_to_impl(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,generics_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,generics_of")]
-#[rustc_clean(cfg="cfail6")]
-impl<T> Bar<T> {
- #[rustc_clean(
- cfg="cfail2",
- except="generics_of,fn_sig,typeck,type_of,optimized_mir"
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- cfg="cfail5",
- except="generics_of,fn_sig,typeck,type_of,optimized_mir"
- )]
- #[rustc_clean(cfg="cfail6")]
- pub fn add_type_parameter_to_impl(&self) { }
-}
-
-
-
-// Change Self Type of Impl ----------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl Bar<u32> {
- pub fn change_impl_self_type(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-impl Bar<u64> {
- #[rustc_clean(cfg="cfail2", except="fn_sig,optimized_mir,typeck")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="fn_sig,optimized_mir,typeck")]
- #[rustc_clean(cfg="cfail6")]
- pub fn change_impl_self_type(&self) { }
-}
-
-
-
-// Add Lifetime Bound to Impl --------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl<T> Bar<T> {
- pub fn add_lifetime_bound_to_impl_parameter(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-impl<T: 'static> Bar<T> {
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- pub fn add_lifetime_bound_to_impl_parameter(&self) { }
-}
-
-
-
-// Add Trait Bound to Impl Parameter -------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-impl<T> Bar<T> {
- pub fn add_trait_bound_to_impl_parameter(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-impl<T: Clone> Bar<T> {
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- pub fn add_trait_bound_to_impl_parameter(&self) { }
-}
-
-
-// Force instantiation of some fns so we can check their hash.
-pub fn instantiation_root() {
- Foo::method_privacy();
-
- #[cfg(any(cfail1,cfail4))]
- {
- Bar(0u32).change_impl_self_type();
- }
-
- #[cfg(not(any(cfail1,cfail4)))]
- {
- Bar(0u64).change_impl_self_type();
- }
-}
diff --git a/src/test/incremental/hashes/inline_asm.rs b/src/test/incremental/hashes/inline_asm.rs
deleted file mode 100644
index dc878d682..000000000
--- a/src/test/incremental/hashes/inline_asm.rs
+++ /dev/null
@@ -1,222 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for inline asm.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// needs-asm-support
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-use std::arch::asm;
-
-// Change template
-#[cfg(any(cfail1,cfail4))]
-#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
-pub fn change_template(_a: i32) -> i32 {
- let c: i32;
- unsafe {
- asm!("mov {0}, 1",
- out(reg) c
- );
- }
- c
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
-pub fn change_template(_a: i32) -> i32 {
- let c: i32;
- unsafe {
- asm!("mov {0}, 2",
- out(reg) c
- );
- }
- c
-}
-
-
-
-// Change output
-#[cfg(any(cfail1,cfail4))]
-#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
-pub fn change_output(a: i32) -> i32 {
- let mut _out1: i32 = 0;
- let mut _out2: i32 = 0;
- unsafe {
- asm!("mov {0}, {1}",
- out(reg) _out1,
- in(reg) a
- );
- }
- _out1
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
-pub fn change_output(a: i32) -> i32 {
- let mut _out1: i32 = 0;
- let mut _out2: i32 = 0;
- unsafe {
- asm!("mov {0}, {1}",
- out(reg) _out2,
- in(reg) a
- );
- }
- _out1
-}
-
-
-
-// Change input
-#[cfg(any(cfail1,cfail4))]
-#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
-pub fn change_input(_a: i32, _b: i32) -> i32 {
- let _out;
- unsafe {
- asm!("mov {0}, {1}",
- out(reg) _out,
- in(reg) _a
- );
- }
- _out
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
-pub fn change_input(_a: i32, _b: i32) -> i32 {
- let _out;
- unsafe {
- asm!("mov {0}, {1}",
- out(reg) _out,
- in(reg) _b
- );
- }
- _out
-}
-
-
-
-// Change input constraint
-#[cfg(any(cfail1,cfail4))]
-#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
-pub fn change_input_constraint(_a: i32, _b: i32) -> i32 {
- let _out;
- unsafe {
- asm!("mov {0}, {1}",
- out(reg) _out,
- in(reg) _a,
- in("eax") _b);
- }
- _out
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
-pub fn change_input_constraint(_a: i32, _b: i32) -> i32 {
- let _out;
- unsafe {
- asm!("mov {0}, {1}",
- out(reg) _out,
- in(reg) _a,
- in("ecx") _b);
- }
- _out
-}
-
-
-// Change clobber
-#[cfg(any(cfail1,cfail4))]
-#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
-pub fn change_clobber(_a: i32) -> i32 {
- let _out;
- unsafe {
- asm!("mov {0}, {1}",
- out(reg) _out,
- in(reg) _a,
- lateout("ecx") _
- );
- }
- _out
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
-pub fn change_clobber(_a: i32) -> i32 {
- let _out;
- unsafe {
- asm!("mov {0}, {1}",
- out(reg) _out,
- in(reg) _a,
- lateout("edx") _
- );
- }
- _out
-}
-
-
-
-// Change options
-#[cfg(any(cfail1,cfail4))]
-#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
-pub fn change_options(_a: i32) -> i32 {
- let _out;
- unsafe {
- asm!("mov {0}, {1}",
- out(reg) _out,
- in(reg) _a,
- options(readonly),
- );
- }
- _out
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-#[cfg(any(target_arch = "x86", target_arch = "x86_64"))]
-pub fn change_options(_a: i32) -> i32 {
- let _out;
- unsafe {
- asm!("mov {0}, {1}",
- out(reg) _out,
- in(reg) _a,
- options(nomem ),
- );
- }
- _out
-}
diff --git a/src/test/incremental/hashes/let_expressions.rs b/src/test/incremental/hashes/let_expressions.rs
deleted file mode 100644
index 01320cd51..000000000
--- a/src/test/incremental/hashes/let_expressions.rs
+++ /dev/null
@@ -1,222 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for let expressions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-// Change Name -----------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_name() {
- let _x = 2u64;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_name() {
- let _y = 2u64;
-}
-
-
-
-// Add Type --------------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_type() {
- let _x = 2u32;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_type() {
- let _x: u32 = 2u32;
-}
-
-
-
-// Change Type -----------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_type() {
- let _x: u64 = 2;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_type() {
- let _x: u8 = 2;
-}
-
-
-
-// Change Mutability of Reference Type -----------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_mutability_of_reference_type() {
- let _x: & u64;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_mutability_of_reference_type() {
- let _x: &mut u64;
-}
-
-
-
-// Change Mutability of Slot ---------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_mutability_of_slot() {
- let mut _x: u64 = 0;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_mutability_of_slot() {
- let _x: u64 = 0;
-}
-
-
-
-// Change Simple Binding to Pattern --------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_simple_binding_to_pattern() {
- let _x = (0u8, 'x');
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_simple_binding_to_pattern() {
- let (_a, _b) = (0u8, 'x');
-}
-
-
-
-// Change Name in Pattern ------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_name_in_pattern() {
- let (_a, _b) = (1u8, 'y');
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_name_in_pattern() {
- let (_a, _c) = (1u8, 'y');
-}
-
-
-
-// Add `ref` in Pattern --------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_ref_in_pattern() {
- let ( _a, _b) = (1u8, 'y');
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_ref_in_pattern() {
- let (ref _a, _b) = (1u8, 'y');
-}
-
-
-
-// Add `&` in Pattern ----------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_amp_in_pattern() {
- let ( _a, _b) = (&1u8, 'y');
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_amp_in_pattern() {
- let (&_a, _b) = (&1u8, 'y');
-}
-
-
-
-// Change Mutability of Binding in Pattern -------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_mutability_of_binding_in_pattern() {
- let ( _a, _b) = (99u8, 'q');
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_mutability_of_binding_in_pattern() {
- let (mut _a, _b) = (99u8, 'q');
-}
-
-
-
-// Add Initializer -------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_initializer() {
- let _x: i16 ;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_initializer() {
- let _x: i16 = 3i16;
-}
-
-
-
-// Change Initializer ----------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_initializer() {
- let _x = 4u16;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_initializer() {
- let _x = 5u16;
-}
diff --git a/src/test/incremental/hashes/loop_expressions.rs b/src/test/incremental/hashes/loop_expressions.rs
deleted file mode 100644
index a12cd0d02..000000000
--- a/src/test/incremental/hashes/loop_expressions.rs
+++ /dev/null
@@ -1,227 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for `loop` loops.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-
-// Change loop body
-#[cfg(any(cfail1,cfail4))]
-pub fn change_loop_body() {
- let mut _x = 0;
- loop {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_loop_body() {
- let mut _x = 0;
- loop {
- _x = 2;
- break;
- }
-}
-
-
-
-// Add break
-#[cfg(any(cfail1,cfail4))]
-pub fn add_break() {
- let mut _x = 0;
- loop {
- _x = 1;
- //----
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_break() {
- let mut _x = 0;
- loop {
- _x = 1;
- break;
- }
-}
-
-
-
-// Add loop label
-#[cfg(any(cfail1,cfail4))]
-pub fn add_loop_label() {
- let mut _x = 0;
- /*---*/ loop {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_loop_label() {
- let mut _x = 0;
- 'label: loop {
- _x = 1;
- break;
- }
-}
-
-
-
-// Add loop label to break
-#[cfg(any(cfail1,cfail4))]
-pub fn add_loop_label_to_break() {
- let mut _x = 0;
- 'label: loop {
- _x = 1;
- break ;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_loop_label_to_break() {
- let mut _x = 0;
- 'label: loop {
- _x = 1;
- break 'label;
- }
-}
-
-
-
-// Change break label
-#[cfg(any(cfail1,cfail4))]
-pub fn change_break_label() {
- let mut _x = 0;
- 'outer: loop {
- 'inner: loop {
- _x = 1;
- break 'inner;
- }
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_break_label() {
- let mut _x = 0;
- 'outer: loop {
- 'inner: loop {
- _x = 1;
- break 'outer;
- }
- }
-}
-
-
-
-// Add loop label to continue
-#[cfg(any(cfail1,cfail4))]
-pub fn add_loop_label_to_continue() {
- let mut _x = 0;
- 'label: loop {
- _x = 1;
- continue ;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_loop_label_to_continue() {
- let mut _x = 0;
- 'label: loop {
- _x = 1;
- continue 'label;
- }
-}
-
-
-
-// Change continue label
-#[cfg(any(cfail1,cfail4))]
-pub fn change_continue_label() {
- let mut _x = 0;
- 'outer: loop {
- 'inner: loop {
- _x = 1;
- continue 'inner;
- }
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, typeck, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_continue_label() {
- let mut _x = 0;
- 'outer: loop {
- 'inner: loop {
- _x = 1;
- continue 'outer;
- }
- }
-}
-
-
-
-// Change continue to break
-#[cfg(any(cfail1,cfail4))]
-pub fn change_continue_to_break() {
- let mut _x = 0;
- loop {
- _x = 1;
- continue;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, typeck, optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, typeck, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_continue_to_break() {
- let mut _x = 0;
- loop {
- _x = 1;
- break ;
- }
-}
diff --git a/src/test/incremental/hashes/match_expressions.rs b/src/test/incremental/hashes/match_expressions.rs
deleted file mode 100644
index fa054c7de..000000000
--- a/src/test/incremental/hashes/match_expressions.rs
+++ /dev/null
@@ -1,337 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for match expressions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-// Add Arm ---------------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_arm(x: u32) -> u32 {
- match x {
- 0 => 0,
- 1 => 1,
- /*---*/
- _ => 100,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_arm(x: u32) -> u32 {
- match x {
- 0 => 0,
- 1 => 1,
- 2 => 2,
- _ => 100,
- }
-}
-
-
-
-// Change Order Of Arms --------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_order_of_arms(x: u32) -> u32 {
- match x {
- 0 => 0,
- 1 => 1,
- _ => 100,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_order_of_arms(x: u32) -> u32 {
- match x {
- 1 => 1,
- 0 => 0,
- _ => 100,
- }
-}
-
-
-
-// Add Guard Clause ------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_guard_clause(x: u32, y: bool) -> u32 {
- match x {
- 0 => 0,
- 1 => 1,
- _ => 100,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_guard_clause(x: u32, y: bool) -> u32 {
- match x {
- 0 => 0,
- 1 if y => 1,
- _ => 100,
- }
-}
-
-
-
-// Change Guard Clause ------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_guard_clause(x: u32, y: bool) -> u32 {
- match x {
- 0 => 0,
- 1 if y => 1,
- _ => 100,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_guard_clause(x: u32, y: bool) -> u32 {
- match x {
- 0 => 0,
- 1 if !y => 1,
- _ => 100,
- }
-}
-
-
-
-// Add @-Binding ---------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_at_binding(x: u32) -> u32 {
- match x {
- 0 => 0,
- 1 => 1,
- _ => x,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_at_binding(x: u32) -> u32 {
- match x {
- 0 => 0,
- 1 => 1,
- x @ _ => x,
- }
-}
-
-
-
-// Change Name of @-Binding ----------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_name_of_at_binding(x: u32) -> u32 {
- match x {
- 0 => 0,
- 1 => 1,
- x @ _ => 7,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_name_of_at_binding(x: u32) -> u32 {
- match x {
- 0 => 0,
- 1 => 1,
- y @ _ => 7,
- }
-}
-
-
-
-// Change Simple Binding To Pattern --------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_simple_name_to_pattern(x: u32) -> u32 {
- match (x, x & 1) {
- (0, 0) => 0,
- a => 1,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_simple_name_to_pattern(x: u32) -> u32 {
- match (x, x & 1) {
- (0, 0) => 0,
- (x, y) => 1,
- }
-}
-
-
-
-// Change Name In Pattern ------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_name_in_pattern(x: u32) -> u32 {
- match (x, x & 1) {
- (a, 0) => 0,
- (a, 1) => a,
- _ => 100,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_name_in_pattern(x: u32) -> u32 {
- match (x, x & 1) {
- (b, 0) => 0,
- (a, 1) => a,
- _ => 100,
- }
-}
-
-
-
-// Change Mutability Of Binding In Pattern -------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_mutability_of_binding_in_pattern(x: u32) -> u32 {
- match (x, x & 1) {
- ( a, 0) => 0,
- _ => 1,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_mutability_of_binding_in_pattern(x: u32) -> u32 {
- match (x, x & 1) {
- (mut a, 0) => 0,
- _ => 1,
- }
-}
-
-
-
-// Add `ref` To Binding In Pattern -------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_ref_to_binding_in_pattern(x: u32) -> u32 {
- match (x, x & 1) {
- ( a, 0) => 0,
- _ => 1,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_ref_to_binding_in_pattern(x: u32) -> u32 {
- match (x, x & 1) {
- (ref a, 0) => 0,
- _ => 1,
- }
-}
-
-
-
-// Add `&` To Binding In Pattern -------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_amp_to_binding_in_pattern(x: u32) -> u32 {
- match (&x, x & 1) {
- ( a, 0) => 0,
- _ => 1,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_amp_to_binding_in_pattern(x: u32) -> u32 {
- match (&x, x & 1) {
- (&a, 0) => 0,
- _ => 1,
- }
-}
-
-
-
-// Change RHS Of Arm -----------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn change_rhs_of_arm(x: u32) -> u32 {
- match x {
- 0 => 0,
- 1 => 1,
- _ => 2,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_rhs_of_arm(x: u32) -> u32 {
- match x {
- 0 => 0,
- 1 => 3,
- _ => 2,
- }
-}
-
-
-
-// Add Alternative To Arm ------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn add_alternative_to_arm(x: u32) -> u32 {
- match x {
- 0 => 0,
- 1 => 1,
- _ => 2,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_alternative_to_arm(x: u32) -> u32 {
- match x {
- 0 | 7 => 0,
- 1 => 3,
- _ => 2,
- }
-}
diff --git a/src/test/incremental/hashes/panic_exprs.rs b/src/test/incremental/hashes/panic_exprs.rs
deleted file mode 100644
index 37d10d922..000000000
--- a/src/test/incremental/hashes/panic_exprs.rs
+++ /dev/null
@@ -1,151 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for exprs that can panic at runtime (e.g., because of bounds checking). For
-// these expressions an error message containing their source location is
-// generated, so their hash must always depend on their location in the source
-// code, not just when debuginfo is enabled.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3
-// compile-flags: -Z query-dep-graph -C debug-assertions -O
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-
-// Indexing expression
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-pub fn indexing(slice: &[u8]) -> u8 {
- #[cfg(cfail1)]
- {
- slice[100]
- }
- #[cfg(not(cfail1))]
- {
- slice[100]
- }
-}
-
-
-// Arithmetic overflow plus
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-pub fn arithmetic_overflow_plus(val: i32) -> i32 {
- #[cfg(cfail1)]
- {
- val + 1
- }
- #[cfg(not(cfail1))]
- {
- val + 1
- }
-}
-
-
-// Arithmetic overflow minus
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-pub fn arithmetic_overflow_minus(val: i32) -> i32 {
- #[cfg(cfail1)]
- {
- val - 1
- }
- #[cfg(not(cfail1))]
- {
- val - 1
- }
-}
-
-
-// Arithmetic overflow mult
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-pub fn arithmetic_overflow_mult(val: i32) -> i32 {
- #[cfg(cfail1)]
- {
- val * 2
- }
- #[cfg(not(cfail1))]
- {
- val * 2
- }
-}
-
-
-// Arithmetic overflow negation
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-pub fn arithmetic_overflow_negation(val: i32) -> i32 {
- #[cfg(cfail1)]
- {
- -val
- }
- #[cfg(not(cfail1))]
- {
- -val
- }
-}
-
-
-// Division by zero
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-pub fn division_by_zero(val: i32) -> i32 {
- #[cfg(cfail1)]
- {
- 2 / val
- }
- #[cfg(not(cfail1))]
- {
- 2 / val
- }
-}
-
-// Division by zero
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-pub fn mod_by_zero(val: i32) -> i32 {
- #[cfg(cfail1)]
- {
- 2 % val
- }
- #[cfg(not(cfail1))]
- {
- 2 % val
- }
-}
-
-
-// shift left
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-pub fn shift_left(val: i32, shift: usize) -> i32 {
- #[cfg(cfail1)]
- {
- val << shift
- }
- #[cfg(not(cfail1))]
- {
- val << shift
- }
-}
-
-
-// shift right
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-pub fn shift_right(val: i32, shift: usize) -> i32 {
- #[cfg(cfail1)]
- {
- val >> shift
- }
- #[cfg(not(cfail1))]
- {
- val >> shift
- }
-}
diff --git a/src/test/incremental/hashes/statics.rs b/src/test/incremental/hashes/statics.rs
deleted file mode 100644
index 67d87f5c4..000000000
--- a/src/test/incremental/hashes/statics.rs
+++ /dev/null
@@ -1,186 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for statics.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![feature(linkage)]
-#![feature(thread_local)]
-#![crate_type="rlib"]
-
-
-// Change static visibility
-#[cfg(any(cfail1,cfail4))]
-static STATIC_VISIBILITY: u8 = 0;
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub static STATIC_VISIBILITY: u8 = 0;
-
-
-// Change static mutability
-#[cfg(any(cfail1,cfail4))]
-static STATIC_MUTABILITY: u8 = 0;
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-static mut STATIC_MUTABILITY: u8 = 0;
-
-
-// Add linkage attribute
-#[cfg(any(cfail1,cfail4))]
-static STATIC_LINKAGE: u8 = 0;
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-#[linkage="weak_odr"]
-static STATIC_LINKAGE: u8 = 0;
-
-
-// Add no_mangle attribute
-#[cfg(any(cfail1,cfail4))]
-static STATIC_NO_MANGLE: u8 = 0;
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-#[no_mangle]
-static STATIC_NO_MANGLE: u8 = 0;
-
-
-// Add thread_local attribute
-#[cfg(any(cfail1,cfail4))]
-static STATIC_THREAD_LOCAL: u8 = 0;
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-#[thread_local]
-static STATIC_THREAD_LOCAL: u8 = 0;
-
-
-// Change type from i16 to u64
-#[cfg(any(cfail1,cfail4))]
-static STATIC_CHANGE_TYPE_1: i16 = 0;
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-static STATIC_CHANGE_TYPE_1: u64 = 0;
-
-
-// Change type from Option<i8> to Option<u16>
-#[cfg(any(cfail1,cfail4))]
-static STATIC_CHANGE_TYPE_2: Option<i8> = None;
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-static STATIC_CHANGE_TYPE_2: Option<u16> = None;
-
-
-// Change value between simple literals
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-static STATIC_CHANGE_VALUE_1: i16 = {
- #[cfg(any(cfail1,cfail4))]
- { 1 }
-
- #[cfg(not(any(cfail1,cfail4)))]
- { 2 }
-};
-
-
-// Change value between expressions
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-static STATIC_CHANGE_VALUE_2: i16 = {
- #[cfg(any(cfail1,cfail4))]
- { 1 + 1 }
-
- #[cfg(not(any(cfail1,cfail4)))]
- { 1 + 2 }
-};
-
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-static STATIC_CHANGE_VALUE_3: i16 = {
- #[cfg(any(cfail1,cfail4))]
- { 2 + 3 }
-
- #[cfg(not(any(cfail1,cfail4)))]
- { 2 * 3 }
-};
-
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-static STATIC_CHANGE_VALUE_4: i16 = {
- #[cfg(any(cfail1,cfail4))]
- { 1 + 2 * 3 }
-
- #[cfg(not(any(cfail1,cfail4)))]
- { 1 + 2 * 4 }
-};
-
-
-// Change type indirectly
-struct ReferencedType1;
-struct ReferencedType2;
-
-mod static_change_type_indirectly {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedType1 as Type;
-
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedType2 as Type;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
- #[rustc_clean(cfg="cfail6")]
- static STATIC_CHANGE_TYPE_INDIRECTLY_1: Type = Type;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,type_of")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
- #[rustc_clean(cfg="cfail6")]
- static STATIC_CHANGE_TYPE_INDIRECTLY_2: Option<Type> = None;
-}
diff --git a/src/test/incremental/hashes/struct_constructors.rs b/src/test/incremental/hashes/struct_constructors.rs
deleted file mode 100644
index fc9671cb4..000000000
--- a/src/test/incremental/hashes/struct_constructors.rs
+++ /dev/null
@@ -1,270 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for struct constructor expressions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-
-pub struct RegularStruct {
- x: i32,
- y: i64,
- z: i16,
-}
-
-// Change field value (regular struct)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_field_value_regular_struct() -> RegularStruct {
- RegularStruct {
- x: 0,
- y: 1,
- z: 2,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_field_value_regular_struct() -> RegularStruct {
- RegularStruct {
- x: 0,
- y: 2,
- z: 2,
- }
-}
-
-
-
-// Change field order (regular struct)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_field_order_regular_struct() -> RegularStruct {
- RegularStruct {
- x: 3,
- y: 4,
- z: 5,
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_field_order_regular_struct() -> RegularStruct {
- RegularStruct {
- y: 4,
- x: 3,
- z: 5,
- }
-}
-
-
-
-// Add field (regular struct)
-#[cfg(any(cfail1,cfail4))]
-pub fn add_field_regular_struct() -> RegularStruct {
- let struct1 = RegularStruct {
- x: 3,
- y: 4,
- z: 5,
- };
-
- RegularStruct {
- x: 7,
- // --
- .. struct1
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_field_regular_struct() -> RegularStruct {
- let struct1 = RegularStruct {
- x: 3,
- y: 4,
- z: 5,
- };
-
- RegularStruct {
- x: 7,
- y: 8,
- .. struct1
- }
-}
-
-
-
-// Change field label (regular struct)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_field_label_regular_struct() -> RegularStruct {
- let struct1 = RegularStruct {
- x: 3,
- y: 4,
- z: 5,
- };
-
- RegularStruct {
- x: 7,
- y: 9,
- .. struct1
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_field_label_regular_struct() -> RegularStruct {
- let struct1 = RegularStruct {
- x: 3,
- y: 4,
- z: 5,
- };
-
- RegularStruct {
- x: 7,
- z: 9,
- .. struct1
- }
-}
-
-
-
-pub struct RegularStruct2 {
- x: i8,
- y: i8,
- z: i8,
-}
-
-// Change constructor path (regular struct)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_constructor_path_regular_struct() {
- let _ = RegularStruct {
- x: 0,
- y: 1,
- z: 2,
- };
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_constructor_path_regular_struct() {
- let _ = RegularStruct2 {
- x: 0,
- y: 1,
- z: 2,
- };
-}
-
-
-
-// Change constructor path indirectly (regular struct)
-pub mod change_constructor_path_indirectly_regular_struct {
- #[cfg(any(cfail1,cfail4))]
- use super::RegularStruct as Struct;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::RegularStruct2 as Struct;
-
- #[rustc_clean(
- cfg="cfail2",
- except="fn_sig,hir_owner,hir_owner_nodes,optimized_mir,typeck"
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- cfg="cfail5",
- except="fn_sig,hir_owner,hir_owner_nodes,optimized_mir,typeck"
- )]
- #[rustc_clean(cfg="cfail6")]
- pub fn function() -> Struct {
- Struct {
- x: 0,
- y: 1,
- z: 2,
- }
- }
-}
-
-
-
-pub struct TupleStruct(i32, i64, i16);
-
-// Change field value (tuple struct)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_field_value_tuple_struct() -> TupleStruct {
- TupleStruct(0, 1, 2)
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_field_value_tuple_struct() -> TupleStruct {
- TupleStruct(0, 1, 3)
-}
-
-
-
-pub struct TupleStruct2(u16, u16, u16);
-
-// Change constructor path (tuple struct)
-#[cfg(any(cfail1,cfail4))]
-pub fn change_constructor_path_tuple_struct() {
- let _ = TupleStruct (0, 1, 2);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_constructor_path_tuple_struct() {
- let _ = TupleStruct2(0, 1, 2);
-}
-
-
-
-// Change constructor path indirectly (tuple struct)
-pub mod change_constructor_path_indirectly_tuple_struct {
- #[cfg(any(cfail1,cfail4))]
- use super::TupleStruct as Struct;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::TupleStruct2 as Struct;
-
- #[rustc_clean(
- cfg="cfail5",
- except="fn_sig,hir_owner,hir_owner_nodes,optimized_mir,typeck"
- )]
- #[rustc_clean(cfg="cfail6")]
- #[rustc_clean(
- cfg="cfail2",
- except="fn_sig,hir_owner,hir_owner_nodes,optimized_mir,typeck"
- )]
- #[rustc_clean(cfg="cfail3")]
- pub fn function() -> Struct {
- Struct(0, 1, 2)
- }
-}
diff --git a/src/test/incremental/hashes/struct_defs.rs b/src/test/incremental/hashes/struct_defs.rs
deleted file mode 100644
index 7a91722d7..000000000
--- a/src/test/incremental/hashes/struct_defs.rs
+++ /dev/null
@@ -1,335 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for struct definitions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// We also test the ICH for struct definitions exported in metadata. Same as
-// above, we want to make sure that the change between rev1 and rev2 also
-// results in a change of the ICH for the struct's metadata, and that it stays
-// the same between rev2 and rev3.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-// Layout ----------------------------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub struct LayoutPacked;
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="type_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="type_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-#[repr(packed)]
-pub struct LayoutPacked;
-
-#[cfg(any(cfail1,cfail4))]
-struct LayoutC;
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="type_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="type_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-#[repr(C)]
-struct LayoutC;
-
-
-// Tuple Struct Change Field Type ----------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-struct TupleStructFieldType(i32);
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-// Note that changing the type of a field does not change the type of the struct or enum, but
-// adding/removing fields or changing a fields name or visibility does.
-struct TupleStructFieldType(
- u32
-);
-
-
-// Tuple Struct Add Field ------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-struct TupleStructAddField(i32);
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,type_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,type_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-struct TupleStructAddField(
- i32,
- u32
-);
-
-
-// Tuple Struct Field Visibility -----------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-struct TupleStructFieldVisibility( char);
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-struct TupleStructFieldVisibility(pub char);
-
-
-// Record Struct Field Type ----------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-struct RecordStructFieldType { x: f32 }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-// Note that changing the type of a field does not change the type of the struct or enum, but
-// adding/removing fields or changing a fields name or visibility does.
-struct RecordStructFieldType {
- x: u64
-}
-
-
-// Record Struct Field Name ----------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-struct RecordStructFieldName { x: f32 }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,type_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,type_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-struct RecordStructFieldName { y: f32 }
-
-
-// Record Struct Add Field -----------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-struct RecordStructAddField { x: f32 }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,type_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,type_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-struct RecordStructAddField {
- x: f32,
- y: () }
-
-
-// Record Struct Field Visibility ----------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-struct RecordStructFieldVisibility { x: f32 }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="type_of")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes,type_of")]
-#[rustc_clean(cfg="cfail6")]
-struct RecordStructFieldVisibility { pub x: f32 }
-
-
-// Add Lifetime Parameter ------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-struct AddLifetimeParameter<'a>(&'a f32, &'a f64);
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,type_of,generics_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,type_of,generics_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-struct AddLifetimeParameter<'a, 'b>(&'a f32, &'b f64);
-
-
-// Add Lifetime Parameter Bound ------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-struct AddLifetimeParameterBound<'a, 'b>(&'a f32, &'b f64);
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-struct AddLifetimeParameterBound<'a, 'b: 'a>(
- &'a f32,
- &'b f64
-);
-
-#[cfg(any(cfail1,cfail4))]
-struct AddLifetimeParameterBoundWhereClause<'a, 'b>(&'a f32, &'b f64);
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-struct AddLifetimeParameterBoundWhereClause<'a, 'b>(
- &'a f32,
- &'b f64)
- where 'b: 'a;
-
-
-// Add Type Parameter ----------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-struct AddTypeParameter<T1>(T1, T1);
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,type_of,generics_of,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,type_of,generics_of,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-struct AddTypeParameter<T1, T2>(
- // The field contains the parent's Generics, so it's dirty even though its
- // type hasn't changed.
- T1,
- T2
-);
-
-
-// Add Type Parameter Bound ----------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-struct AddTypeParameterBound<T>(T);
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-struct AddTypeParameterBound<T: Send>(
- T
-);
-
-
-#[cfg(any(cfail1,cfail4))]
-struct AddTypeParameterBoundWhereClause<T>(T);
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-struct AddTypeParameterBoundWhereClause<T>(
- T
-) where T: Sync;
-
-
-// Empty struct ----------------------------------------------------------------
-// Since we cannot change anything in this case, we just make sure that the
-// fingerprint is stable (i.e., that there are no random influences like memory
-// addresses taken into account by the hashing algorithm).
-// Note: there is no #[cfg(...)], so this is ALWAYS compiled
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub struct EmptyStruct;
-
-
-// Visibility ------------------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-struct Visibility;
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub struct Visibility;
-
-struct ReferencedType1;
-struct ReferencedType2;
-
-// Tuple Struct Change Field Type Indirectly -----------------------------------
-mod tuple_struct_change_field_type_indirectly {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedType1 as FieldType;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedType2 as FieldType;
-
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- struct TupleStruct(
- FieldType
- );
-}
-
-
-// Record Struct Change Field Type Indirectly -----------------------------------
-mod record_struct_change_field_type_indirectly {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedType1 as FieldType;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedType2 as FieldType;
-
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- struct RecordStruct {
- _x: FieldType
- }
-}
-
-
-
-
-trait ReferencedTrait1 {}
-trait ReferencedTrait2 {}
-
-// Change Trait Bound Indirectly -----------------------------------------------
-mod change_trait_bound_indirectly {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedTrait1 as Trait;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedTrait2 as Trait;
-
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- struct Struct<T: Trait>(T);
-}
-
-// Change Trait Bound Indirectly In Where Clause -------------------------------
-mod change_trait_bound_indirectly_in_where_clause {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedTrait1 as Trait;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedTrait2 as Trait;
-
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- struct Struct<T>(T) where T : Trait;
-}
diff --git a/src/test/incremental/hashes/trait_defs.rs b/src/test/incremental/hashes/trait_defs.rs
deleted file mode 100644
index c453eeceb..000000000
--- a/src/test/incremental/hashes/trait_defs.rs
+++ /dev/null
@@ -1,1412 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for trait definitions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// We also test the ICH for trait definitions exported in metadata. Same as
-// above, we want to make sure that the change between rev1 and rev2 also
-// results in a change of the ICH for the trait's metadata, and that it stays
-// the same between rev2 and rev3.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-#![feature(associated_type_defaults)]
-
-
-// Change trait visibility
-#[cfg(any(cfail1,cfail4))]
-trait TraitVisibility { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub trait TraitVisibility { }
-
-
-
-// Change trait unsafety
-#[cfg(any(cfail1,cfail4))]
-trait TraitUnsafety { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-unsafe trait TraitUnsafety { }
-
-
-
-// Add method
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddMethod {
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub trait TraitAddMethod {
- fn method();
-}
-
-
-
-// Change name of method
-#[cfg(any(cfail1,cfail4))]
-trait TraitChangeMethodName {
- fn method();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitChangeMethodName {
- fn methodChanged();
-}
-
-
-
-// Add return type to method
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddReturnType {
- //---------------------------------------------------------------------
- //--------------------------
- //---------------------------------------------------------------------
- //--------------------------
- fn method() ;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddReturnType {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method() -> u32;
-}
-
-
-
-// Change return type of method
-#[cfg(any(cfail1,cfail4))]
-trait TraitChangeReturnType {
- // --------------------------------------------------------------------
- // -------------------------
- // --------------------------------------------------------------------
- // -------------------------
- fn method() -> u32;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitChangeReturnType {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method() -> u64;
-}
-
-
-
-// Add parameter to method
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddParameterToMethod {
- // --------------------------------------------------------------------
- // -------------------------
- // --------------------------------------------------------------------
- // -------------------------
- fn method( );
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddParameterToMethod {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method(a: u32);
-}
-
-
-
-// Change name of method parameter
-#[cfg(any(cfail1,cfail4))]
-trait TraitChangeMethodParameterName {
- //------------------------------------------------------
- //--------------------------------------------------------------
- //--------------------------
- //--------------------------------------------------------------
- //--------------------------
- fn method(a: u32);
-
- //------------------------------------------------------------------
- //--------------------------
- //------------------------------------------------------------------
- //--------------------------
- fn with_default(x: i32) {}
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitChangeMethodParameterName {
- // FIXME(#38501) This should preferably always be clean.
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method(b: u32);
-
- #[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn with_default(y: i32) {}
-}
-
-
-
-// Change type of method parameter (i32 => i64)
-#[cfg(any(cfail1,cfail4))]
-trait TraitChangeMethodParameterType {
- // --------------------------------------------------------------------
- // -------------------------
- // --------------------------------------------------------------------
- // -------------------------
- fn method(a: i32);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitChangeMethodParameterType {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method(a: i64);
-}
-
-
-
-// Change type of method parameter (&i32 => &mut i32)
-#[cfg(any(cfail1,cfail4))]
-trait TraitChangeMethodParameterTypeRef {
- // --------------------------------------------------------------------
- // -------------------------
- // --------------------------------------------------------------------
- // -------------------------
- fn method(a: & i32);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitChangeMethodParameterTypeRef {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method(a: &mut i32);
-}
-
-
-
-// Change order of method parameters
-#[cfg(any(cfail1,cfail4))]
-trait TraitChangeMethodParametersOrder {
- // --------------------------------------------------------------------
- // -------------------------
- // --------------------------------------------------------------------
- // -------------------------
- fn method(a: i32, b: i64);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitChangeMethodParametersOrder {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method(b: i64, a: i32);
-}
-
-
-
-// Add default implementation to method
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddMethodAutoImplementation {
- // -------------------------------------------------------------
- // -------------------------
- // -------------------------------------------------------------
- // -------------------------
- fn method() ;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddMethodAutoImplementation {
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method() {}
-}
-
-
-
-// Change order of methods
-#[cfg(any(cfail1,cfail4))]
-trait TraitChangeOrderOfMethods {
- fn method0();
- fn method1();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitChangeOrderOfMethods {
- fn method1();
- fn method0();
-}
-
-
-
-// Change mode of self parameter
-#[cfg(any(cfail1,cfail4))]
-trait TraitChangeModeSelfRefToMut {
- // --------------------------------------------------------------------
- // -------------------------
- // --------------------------------------------------------------------
- // -------------------------
- fn method(& self);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitChangeModeSelfRefToMut {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method(&mut self);
-}
-
-
-
-#[cfg(any(cfail1,cfail4))]
-trait TraitChangeModeSelfOwnToMut: Sized {
- // ----------------------------------------------------------------------------------
- // -------------------------
- // ----------------------------------------------------------------------------------
- // -------------------------
- fn method( self) {}
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitChangeModeSelfOwnToMut: Sized {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,typeck,optimized_mir", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,typeck,optimized_mir", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method(mut self) {}
-}
-
-
-
-#[cfg(any(cfail1,cfail4))]
-trait TraitChangeModeSelfOwnToRef {
- // --------------------------------------------------------------------------------
- // -------------------------
- // --------------------------------------------------------------------------------
- // -------------------------
- fn method( self);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitChangeModeSelfOwnToRef {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig,generics_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig,generics_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method(&self);
-}
-
-
-
-// Add unsafe modifier to method
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddUnsafeModifier {
- // --------------------------------------------------------------------
- // -------------------------
- // --------------------------------------------------------------------
- // -------------------------
- fn method() ;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddUnsafeModifier {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- unsafe fn method();
-}
-
-
-
-// Add extern modifier to method
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddExternModifier {
- // --------------------------------------------------------------------
- // -------------------------
- // --------------------------------------------------------------------
- // -------------------------
- fn method() ;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddExternModifier {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- extern "C" fn method();
-}
-
-
-
-// Change extern "C" to extern "stdcall"
-#[cfg(any(cfail1,cfail4))]
-trait TraitChangeExternCToRustIntrinsic {
- // --------------------------------------------------------------------
- // -------------------------
- // --------------------------------------------------------------------
- // -------------------------
- extern "C" fn method();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitChangeExternCToRustIntrinsic {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- extern "stdcall" fn method();
-}
-
-
-
-// Add type parameter to method
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddTypeParameterToMethod {
- // --------------------------------------------------------------------------------
- // ---------------
- // -------------------------
- // --------------------------------------------------------------------------------
- // ---------------
- // -------------------------
- fn method ();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddTypeParameterToMethod {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of",
- cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,generics_of,predicates_of,type_of",
- cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method<T>();
-}
-
-
-
-// Add lifetime parameter to method
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddLifetimeParameterToMethod {
- // --------------------------------------------------------------------------------
- // -------------------------
- // --------------------------------------------------------------------------------
- // -------------------------
- fn method ();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddLifetimeParameterToMethod {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig,generics_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig,generics_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method<'a>();
-}
-
-
-
-// dummy trait for bound
-trait ReferencedTrait0 { }
-trait ReferencedTrait1 { }
-
-// Add trait bound to method type parameter
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddTraitBoundToMethodTypeParameter {
- // ---------------------------------------------------------------------------
- // -------------------------
- // ---------------------------------------------------------------------------
- // -------------------------
- fn method<T >();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddTraitBoundToMethodTypeParameter {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method<T: ReferencedTrait0>();
-}
-
-
-
-// Add builtin bound to method type parameter
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddBuiltinBoundToMethodTypeParameter {
- // ---------------------------------------------------------------------------
- // -------------------------
- // ---------------------------------------------------------------------------
- // -------------------------
- fn method<T >();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddBuiltinBoundToMethodTypeParameter {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method<T: Sized>();
-}
-
-
-
-// Add lifetime bound to method lifetime parameter
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddLifetimeBoundToMethodLifetimeParameter {
- // -----------
- // -----------------------------------------------------------------------------
- // --------------
- //
- // -------------------------
- // -----------
- // -----------------------------------------------------------------------------
- // --------------
- //
- // -------------------------
- fn method<'a, 'b >(a: &'a u32, b: &'b u32);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddLifetimeBoundToMethodLifetimeParameter {
- #[rustc_clean(
- except="hir_owner,hir_owner_nodes,generics_of,predicates_of,fn_sig,type_of",
- cfg="cfail2",
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- except="hir_owner,hir_owner_nodes,generics_of,predicates_of,fn_sig,type_of",
- cfg="cfail5",
- )]
- #[rustc_clean(cfg="cfail6")]
- fn method<'a, 'b: 'a>(a: &'a u32, b: &'b u32);
-}
-
-
-
-// Add second trait bound to method type parameter
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondTraitBoundToMethodTypeParameter {
- // ---------------------------------------------------------------------------
- // -------------------------
- // ---------------------------------------------------------------------------
- // -------------------------
- fn method<T: ReferencedTrait0 >();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondTraitBoundToMethodTypeParameter {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method<T: ReferencedTrait0 + ReferencedTrait1>();
-}
-
-
-
-// Add second builtin bound to method type parameter
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondBuiltinBoundToMethodTypeParameter {
- // ---------------------------------------------------------------------------
- // -------------------------
- // ---------------------------------------------------------------------------
- // -------------------------
- fn method<T: Sized >();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondBuiltinBoundToMethodTypeParameter {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method<T: Sized + Sync>();
-}
-
-
-
-// Add second lifetime bound to method lifetime parameter
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondLifetimeBoundToMethodLifetimeParameter {
- // -----------
- // -----------------------------------------------------------------------------
- // --------------
- //
- // -------------------------
- // -----------
- // -----------------------------------------------------------------------------
- // --------------
- //
- // -------------------------
- fn method<'a, 'b, 'c: 'a >(a: &'a u32, b: &'b u32, c: &'c u32);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondLifetimeBoundToMethodLifetimeParameter {
- #[rustc_clean(
- except="hir_owner,hir_owner_nodes,generics_of,predicates_of,fn_sig,type_of",
- cfg="cfail2",
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- except="hir_owner,hir_owner_nodes,generics_of,predicates_of,fn_sig,type_of",
- cfg="cfail5",
- )]
- #[rustc_clean(cfg="cfail6")]
- fn method<'a, 'b, 'c: 'a + 'b>(a: &'a u32, b: &'b u32, c: &'c u32);
-}
-
-
-
-// Add associated type
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddAssociatedType {
- //--------------------------
- //--------------------------
- // -------------
-
- //--------------------------
- //--------------------------
- //--------------------------
- //--------------------------
- fn method();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddAssociatedType {
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail6")]
- type Associated;
-
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method();
-}
-
-
-
-// Add trait bound to associated type
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddTraitBoundToAssociatedType {
- // -------------------------------------------------------------
- // -------------------------
- // -------------------------------------------------------------
- // -------------------------
- type Associated ;
-
- fn method();
-}
-
-
-// Apparently the type bound contributes to the predicates of the trait, but
-// does not change the associated item itself.
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddTraitBoundToAssociatedType {
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- type Associated: ReferencedTrait0;
-
- fn method();
-}
-
-
-
-// Add lifetime bound to associated type
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddLifetimeBoundToAssociatedType<'a> {
- // -------------------------------------------------------------
- // -------------------------
- // -------------------------------------------------------------
- // -------------------------
- type Associated ;
-
- fn method();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddLifetimeBoundToAssociatedType<'a> {
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- type Associated: 'a;
-
- fn method();
-}
-
-
-
-// Add default to associated type
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddDefaultToAssociatedType {
- //--------------------------------------------------------------
- //--------------------------
- //--------------------------------------------------------------
- //--------------------------
- type Associated ;
-
- fn method();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddDefaultToAssociatedType {
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- type Associated = ReferenceType0;
-
- fn method();
-}
-
-
-
-// Add associated constant
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddAssociatedConstant {
- fn method();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddAssociatedConstant {
- const Value: u32;
-
- fn method();
-}
-
-
-
-// Add initializer to associated constant
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddInitializerToAssociatedConstant {
- //--------------------------------------------------------------
- //--------------------------
- //--------------------------------------------------------------
- //--------------------------
- const Value: u32 ;
-
- //--------------------------
- //--------------------------
- //--------------------------
- //--------------------------
- fn method();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddInitializerToAssociatedConstant {
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- const Value: u32 = 1;
-
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method();
-}
-
-
-
-// Change type of associated constant
-#[cfg(any(cfail1,cfail4))]
-trait TraitChangeTypeOfAssociatedConstant {
- // ---------------------------------------------------------------------
- // -------------------------
- // ---------------------------------------------------------------------
- // -------------------------
- const Value: u32;
-
- // -------------------------
- // -------------------------
- // -------------------------
- // -------------------------
- fn method();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitChangeTypeOfAssociatedConstant {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,type_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,type_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- const Value: f64;
-
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method();
-}
-
-
-
-// Add super trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSuperTrait { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSuperTrait : ReferencedTrait0 { }
-
-
-
-// Add builtin bound (Send or Copy)
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddBuiltiBound { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddBuiltiBound : Send { }
-
-
-
-// Add 'static lifetime bound to trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddStaticLifetimeBound { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddStaticLifetimeBound : 'static { }
-
-
-
-// Add super trait as second bound
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddTraitAsSecondBound : ReferencedTrait0 { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddTraitAsSecondBound : ReferencedTrait0 + ReferencedTrait1 { }
-
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddTraitAsSecondBoundFromBuiltin : Send { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddTraitAsSecondBoundFromBuiltin : Send + ReferencedTrait0 { }
-
-
-
-// Add builtin bound as second bound
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddBuiltinBoundAsSecondBound : ReferencedTrait0 { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddBuiltinBoundAsSecondBound : ReferencedTrait0 + Send { }
-
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddBuiltinBoundAsSecondBoundFromBuiltin : Send { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddBuiltinBoundAsSecondBoundFromBuiltin: Send + Copy { }
-
-
-
-// Add 'static bounds as second bound
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddStaticBoundAsSecondBound : ReferencedTrait0 { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddStaticBoundAsSecondBound : ReferencedTrait0 + 'static { }
-
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddStaticBoundAsSecondBoundFromBuiltin : Send { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddStaticBoundAsSecondBoundFromBuiltin : Send + 'static { }
-
-
-
-// Add type parameter to trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddTypeParameterToTrait { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,generics_of,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,generics_of,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddTypeParameterToTrait<T> { }
-
-
-
-// Add lifetime parameter to trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddLifetimeParameterToTrait { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,generics_of,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,generics_of,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddLifetimeParameterToTrait<'a> { }
-
-
-
-// Add trait bound to type parameter of trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddTraitBoundToTypeParameterOfTrait<T> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddTraitBoundToTypeParameterOfTrait<T: ReferencedTrait0> { }
-
-
-
-// Add lifetime bound to type parameter of trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddLifetimeBoundToTypeParameterOfTrait<'a, T> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddLifetimeBoundToTypeParameterOfTrait<'a, T: 'a> { }
-
-
-
-// Add lifetime bound to lifetime parameter of trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddLifetimeBoundToLifetimeParameterOfTrait<'a, 'b> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddLifetimeBoundToLifetimeParameterOfTrait<'a: 'b, 'b> { }
-
-
-
-// Add builtin bound to type parameter of trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddBuiltinBoundToTypeParameterOfTrait<T> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddBuiltinBoundToTypeParameterOfTrait<T: Send> { }
-
-
-
-// Add second type parameter to trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondTypeParameterToTrait<T> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,generics_of,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,generics_of,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondTypeParameterToTrait<T, S> { }
-
-
-
-// Add second lifetime parameter to trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondLifetimeParameterToTrait<'a> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,generics_of,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,generics_of,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondLifetimeParameterToTrait<'a, 'b> { }
-
-
-
-// Add second trait bound to type parameter of trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondTraitBoundToTypeParameterOfTrait<T: ReferencedTrait0> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondTraitBoundToTypeParameterOfTrait<T: ReferencedTrait0 + ReferencedTrait1> { }
-
-
-
-// Add second lifetime bound to type parameter of trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondLifetimeBoundToTypeParameterOfTrait<'a, 'b, T: 'a> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondLifetimeBoundToTypeParameterOfTrait<'a, 'b, T: 'a + 'b> { }
-
-
-
-// Add second lifetime bound to lifetime parameter of trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondLifetimeBoundToLifetimeParameterOfTrait<'a: 'b, 'b, 'c> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondLifetimeBoundToLifetimeParameterOfTrait<'a: 'b + 'c, 'b, 'c> { }
-
-
-
-// Add second builtin bound to type parameter of trait
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondBuiltinBoundToTypeParameterOfTrait<T: Send> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondBuiltinBoundToTypeParameterOfTrait<T: Send + Sync> { }
-
-
-
-struct ReferenceType0 {}
-struct ReferenceType1 {}
-
-
-
-// Add trait bound to type parameter of trait in where clause
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddTraitBoundToTypeParameterOfTraitWhere<T> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddTraitBoundToTypeParameterOfTraitWhere<T> where T: ReferencedTrait0 { }
-
-
-
-// Add lifetime bound to type parameter of trait in where clause
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddLifetimeBoundToTypeParameterOfTraitWhere<'a, T> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddLifetimeBoundToTypeParameterOfTraitWhere<'a, T> where T: 'a { }
-
-
-
-// Add lifetime bound to lifetime parameter of trait in where clause
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddLifetimeBoundToLifetimeParameterOfTraitWhere<'a, 'b> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddLifetimeBoundToLifetimeParameterOfTraitWhere<'a, 'b> where 'a: 'b { }
-
-
-
-// Add builtin bound to type parameter of trait in where clause
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddBuiltinBoundToTypeParameterOfTraitWhere<T> { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddBuiltinBoundToTypeParameterOfTraitWhere<T> where T: Send { }
-
-
-
-// Add second trait bound to type parameter of trait in where clause
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondTraitBoundToTypeParameterOfTraitWhere<T> where T: ReferencedTrait0 { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondTraitBoundToTypeParameterOfTraitWhere<T>
- where T: ReferencedTrait0 + ReferencedTrait1 { }
-
-
-
-// Add second lifetime bound to type parameter of trait in where clause
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondLifetimeBoundToTypeParameterOfTraitWhere<'a, 'b, T> where T: 'a { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondLifetimeBoundToTypeParameterOfTraitWhere<'a, 'b, T> where T: 'a + 'b { }
-
-
-
-// Add second lifetime bound to lifetime parameter of trait in where clause
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondLifetimeBoundToLifetimeParameterOfTraitWhere<'a, 'b, 'c> where 'a: 'b { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondLifetimeBoundToLifetimeParameterOfTraitWhere<'a, 'b, 'c> where 'a: 'b + 'c { }
-
-
-
-// Add second builtin bound to type parameter of trait in where clause
-#[cfg(any(cfail1,cfail4))]
-trait TraitAddSecondBuiltinBoundToTypeParameterOfTraitWhere<T> where T: Send { }
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-trait TraitAddSecondBuiltinBoundToTypeParameterOfTraitWhere<T> where T: Send + Sync { }
-
-
-// Change return type of method indirectly by modifying a use statement
-mod change_return_type_of_method_indirectly_use {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferenceType0 as ReturnType;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferenceType1 as ReturnType;
-
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- trait TraitChangeReturnType {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method() -> ReturnType;
- }
-}
-
-
-
-// Change type of method parameter indirectly by modifying a use statement
-mod change_method_parameter_type_indirectly_by_use {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferenceType0 as ArgType;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferenceType1 as ArgType;
-
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- trait TraitChangeArgType {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method(a: ArgType);
- }
-}
-
-
-
-// Change trait bound of method type parameter indirectly by modifying a use statement
-mod change_method_parameter_type_bound_indirectly_by_use {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedTrait0 as Bound;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedTrait1 as Bound;
-
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- trait TraitChangeBoundOfMethodTypeParameter {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method<T: Bound>(a: T);
- }
-}
-
-
-
-// Change trait bound of method type parameter in where clause indirectly
-// by modifying a use statement
-mod change_method_parameter_type_bound_indirectly_by_use_where {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedTrait0 as Bound;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedTrait1 as Bound;
-
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- trait TraitChangeBoundOfMethodTypeParameterWhere {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method<T>(a: T) where T: Bound;
- }
-}
-
-
-
-// Change trait bound of trait type parameter indirectly by modifying a use statement
-mod change_method_type_parameter_bound_indirectly {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedTrait0 as Bound;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedTrait1 as Bound;
-
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- trait TraitChangeTraitBound<T: Bound> {
- fn method(a: T);
- }
-}
-
-
-
-// Change trait bound of trait type parameter in where clause indirectly
-// by modifying a use statement
-mod change_method_type_parameter_bound_indirectly_where {
- #[cfg(any(cfail1,cfail4))]
- use super::ReferencedTrait0 as Bound;
- #[cfg(not(any(cfail1,cfail4)))]
- use super::ReferencedTrait1 as Bound;
-
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,predicates_of", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- trait TraitChangeTraitBoundWhere<T> where T: Bound {
- fn method(a: T);
- }
-}
diff --git a/src/test/incremental/hashes/trait_impls.rs b/src/test/incremental/hashes/trait_impls.rs
deleted file mode 100644
index f555f555f..000000000
--- a/src/test/incremental/hashes/trait_impls.rs
+++ /dev/null
@@ -1,620 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for let expressions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![feature(specialization)]
-#![crate_type="rlib"]
-
-struct Foo;
-
-// Change Method Name -----------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub trait ChangeMethodNameTrait {
- fn method_name();
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl ChangeMethodNameTrait for Foo {
- fn method_name() { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub trait ChangeMethodNameTrait {
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail6")]
- fn method_name2();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl ChangeMethodNameTrait for Foo {
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail6")]
- fn method_name2() { }
-}
-
-// Change Method Body -----------------------------------------------------------
-//
-// This should affect the method itself, but not the impl.
-
-pub trait ChangeMethodBodyTrait {
- fn method_name();
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl ChangeMethodBodyTrait for Foo {
- // ----------------------------------------------------------
- // -------------------------
- // ----------------------------------------------------------
- // -------------------------
- fn method_name() {
- //
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl ChangeMethodBodyTrait for Foo {
- #[rustc_clean(except="hir_owner_nodes,typeck", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner_nodes,typeck", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method_name() {
- ()
- }
-}
-
-// Change Method Body (inlined fn) ---------------------------------------------
-//
-// This should affect the method itself, but not the impl.
-
-pub trait ChangeMethodBodyTraitInlined {
- fn method_name();
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl ChangeMethodBodyTraitInlined for Foo {
- // ------------------------------------------------------------------------
- // -------------------------
- // ------------------------------------------------------------------------
- // -------------------------
- #[inline]
- fn method_name() {
- // -----
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl ChangeMethodBodyTraitInlined for Foo {
- #[rustc_clean(except="hir_owner_nodes,typeck,optimized_mir", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner_nodes,typeck,optimized_mir", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- #[inline]
- fn method_name() {
- panic!()
- }
-}
-
-// Change Method Selfness ------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub trait ChangeMethodSelfnessTrait {
- fn method_name();
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl ChangeMethodSelfnessTrait for Foo {
- fn method_name() { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-pub trait ChangeMethodSelfnessTrait {
- fn method_name(&self);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl ChangeMethodSelfnessTrait for Foo {
- #[rustc_clean(
- except="hir_owner,hir_owner_nodes,associated_item,generics_of,fn_sig,typeck,optimized_mir",
- cfg="cfail2",
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- except="hir_owner,hir_owner_nodes,associated_item,generics_of,fn_sig,typeck,optimized_mir",
- cfg="cfail5",
- )]
- #[rustc_clean(cfg="cfail6")]
- fn method_name(&self) {
- ()
- }
-}
-
-// Change Method Selfness -----------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub trait RemoveMethodSelfnessTrait {
- fn method_name(&self);
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl RemoveMethodSelfnessTrait for Foo {
- fn method_name(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-pub trait RemoveMethodSelfnessTrait {
- fn method_name();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl RemoveMethodSelfnessTrait for Foo {
- #[rustc_clean(
- except="hir_owner,hir_owner_nodes,associated_item,generics_of,fn_sig,typeck,optimized_mir",
- cfg="cfail2",
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- except="hir_owner,hir_owner_nodes,associated_item,generics_of,fn_sig,typeck,optimized_mir",
- cfg="cfail5",
- )]
- #[rustc_clean(cfg="cfail6")]
- fn method_name() {}
-}
-
-// Change Method Selfmutness -----------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub trait ChangeMethodSelfmutnessTrait {
- fn method_name(&self);
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl ChangeMethodSelfmutnessTrait for Foo {
- // -----------------------------------------------------------------------------------------
- // -------------------------
- // -----------------------------------------------------------------------------------------
- // -------------------------
- fn method_name(& self) {}
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-pub trait ChangeMethodSelfmutnessTrait {
- fn method_name(&mut self);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl ChangeMethodSelfmutnessTrait for Foo {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig,typeck,optimized_mir", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig,typeck,optimized_mir", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method_name(&mut self) {}
-}
-
-// Change item kind -----------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub trait ChangeItemKindTrait {
- fn name();
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl ChangeItemKindTrait for Foo {
- fn name() { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-pub trait ChangeItemKindTrait {
- type name;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl ChangeItemKindTrait for Foo {
- type name = ();
-}
-
-// Remove item -----------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub trait RemoveItemTrait {
- type TypeName;
- fn method_name();
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl RemoveItemTrait for Foo {
- type TypeName = ();
- fn method_name() { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-pub trait RemoveItemTrait {
- type TypeName;
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl RemoveItemTrait for Foo {
- type TypeName = ();
-}
-
-// Add item -----------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub trait AddItemTrait {
- type TypeName;
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl AddItemTrait for Foo {
- type TypeName = ();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-pub trait AddItemTrait {
- type TypeName;
- fn method_name();
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,associated_item_def_ids", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl AddItemTrait for Foo {
- type TypeName = ();
- fn method_name() { }
-}
-
-// Change has-value -----------------------------------------------------------
-
-#[cfg(any(cfail1,cfail4))]
-pub trait ChangeHasValueTrait {
- //--------------------------------------------------------------
- //--------------------------
- //--------------------------------------------------------------
- //--------------------------
- fn method_name() ;
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl ChangeHasValueTrait for Foo {
- fn method_name() { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub trait ChangeHasValueTrait {
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method_name() { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl ChangeHasValueTrait for Foo {
- fn method_name() { }
-}
-
-// Add default
-
-pub trait AddDefaultTrait {
- fn method_name();
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl AddDefaultTrait for Foo {
- // -------------------------------------------------------------
- // -------------------------
- // -------------------------------------------------------------
- // -------------------------
- fn method_name() { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl AddDefaultTrait for Foo {
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- default fn method_name() { }
-}
-
-// Add arguments
-
-#[cfg(any(cfail1,cfail4))]
-pub trait AddArgumentTrait {
- fn method_name(&self);
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl AddArgumentTrait for Foo {
- // -----------------------------------------------------------------------------------------
- // -------------------------
- // -----------------------------------------------------------------------------------------
- // -------------------------
- fn method_name(&self ) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-pub trait AddArgumentTrait {
- fn method_name(&self, x: u32);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl AddArgumentTrait for Foo {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig,typeck,optimized_mir", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig,typeck,optimized_mir", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method_name(&self, _x: u32) { }
-}
-
-// Change argument type
-
-#[cfg(any(cfail1,cfail4))]
-pub trait ChangeArgumentTypeTrait {
- fn method_name(&self, x: u32);
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl ChangeArgumentTypeTrait for Foo {
- // -----------------------------------------------------------------------------------------
- // -------------------------
- // -----------------------------------------------------------------------------------------
- // -------------------------
- fn method_name(&self, _x: u32 ) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-pub trait ChangeArgumentTypeTrait {
- fn method_name(&self, x: char);
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl ChangeArgumentTypeTrait for Foo {
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig,typeck,optimized_mir", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="hir_owner,hir_owner_nodes,fn_sig,typeck,optimized_mir", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn method_name(&self, _x: char) { }
-}
-
-
-
-struct Bar<T>(T);
-
-// Add Type Parameter To Impl --------------------------------------------------
-trait AddTypeParameterToImpl<T> {
- fn id(t: T) -> T;
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl AddTypeParameterToImpl<u32> for Bar<u32> {
- fn id(t: u32) -> u32 { t }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,generics_of,impl_trait_ref", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,generics_of,impl_trait_ref", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl<TTT> AddTypeParameterToImpl<TTT> for Bar<TTT> {
- #[rustc_clean(
- except="hir_owner,hir_owner_nodes,generics_of,fn_sig,type_of,typeck,optimized_mir",
- cfg="cfail2",
- )]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(
- except="hir_owner,hir_owner_nodes,generics_of,fn_sig,type_of,typeck,optimized_mir",
- cfg="cfail5",
- )]
- #[rustc_clean(cfg="cfail6")]
- fn id(t: TTT) -> TTT { t }
-}
-
-
-
-// Change Self Type of Impl ----------------------------------------------------
-trait ChangeSelfTypeOfImpl {
- fn id(self) -> Self;
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl ChangeSelfTypeOfImpl for u32 {
- fn id(self) -> Self { self }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,impl_trait_ref", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes,impl_trait_ref", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl ChangeSelfTypeOfImpl for u64 {
- #[rustc_clean(except="fn_sig,typeck,optimized_mir", cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(except="fn_sig,typeck,optimized_mir", cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn id(self) -> Self { self }
-}
-
-
-
-// Add Lifetime Bound to Impl --------------------------------------------------
-trait AddLifetimeBoundToImplParameter {
- fn id(self) -> Self;
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl<T> AddLifetimeBoundToImplParameter for T {
- fn id(self) -> Self { self }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl<T: 'static> AddLifetimeBoundToImplParameter for T {
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn id(self) -> Self { self }
-}
-
-
-
-// Add Trait Bound to Impl Parameter -------------------------------------------
-trait AddTraitBoundToImplParameter {
- fn id(self) -> Self;
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl<T> AddTraitBoundToImplParameter for T {
- fn id(self) -> Self { self }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner,hir_owner_nodes", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl<T: Clone> AddTraitBoundToImplParameter for T {
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- fn id(self) -> Self { self }
-}
-
-
-
-// Add #[no_mangle] to Method --------------------------------------------------
-trait AddNoMangleToMethod {
- fn add_no_mangle_to_method(&self) { }
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl AddNoMangleToMethod for Foo {
- // -------------------------
- // -------------------------
- // -------------------------
- // -------------------------
- // ---------
- fn add_no_mangle_to_method(&self) { }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl AddNoMangleToMethod for Foo {
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- #[no_mangle]
- fn add_no_mangle_to_method(&self) { }
-}
-
-
-// Make Method #[inline] -------------------------------------------------------
-trait MakeMethodInline {
- fn make_method_inline(&self) -> u8 { 0 }
-}
-
-#[cfg(any(cfail1,cfail4))]
-impl MakeMethodInline for Foo {
- // -------------------------
- // -------------------------
- // -------------------------
- // -------------------------
- // ------
- fn make_method_inline(&self) -> u8 { 0 }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-impl MakeMethodInline for Foo {
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- #[rustc_clean(cfg="cfail5")]
- #[rustc_clean(cfg="cfail6")]
- #[inline]
- fn make_method_inline(&self) -> u8 { 0 }
-}
diff --git a/src/test/incremental/hashes/type_defs.rs b/src/test/incremental/hashes/type_defs.rs
deleted file mode 100644
index 79398eb07..000000000
--- a/src/test/incremental/hashes/type_defs.rs
+++ /dev/null
@@ -1,220 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for `type` definitions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// We also test the ICH for `type` definitions exported in metadata. Same as
-// above, we want to make sure that the change between rev1 and rev2 also
-// results in a change of the ICH for the enum's metadata, and that it stays
-// the same between rev2 and rev3.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3
-// compile-flags: -Z query-dep-graph -O
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-
-// Change type (primitive) -----------------------------------------------------
-#[cfg(cfail1)]
-type ChangePrimitiveType = i32;
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type ChangePrimitiveType = i64;
-
-
-
-// Change mutability -----------------------------------------------------------
-#[cfg(cfail1)]
-type ChangeMutability = &'static i32;
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type ChangeMutability = &'static mut i32;
-
-
-
-// Change mutability -----------------------------------------------------------
-#[cfg(cfail1)]
-type ChangeLifetime<'a> = (&'static i32, &'a i32);
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type ChangeLifetime<'a> = (&'a i32, &'a i32);
-
-
-
-// Change type (struct) -----------------------------------------------------------
-struct Struct1;
-struct Struct2;
-
-#[cfg(cfail1)]
-type ChangeTypeStruct = Struct1;
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type ChangeTypeStruct = Struct2;
-
-
-
-// Change type (tuple) ---------------------------------------------------------
-#[cfg(cfail1)]
-type ChangeTypeTuple = (u32, u64);
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type ChangeTypeTuple = (u32, i64);
-
-
-
-// Change type (enum) ----------------------------------------------------------
-enum Enum1 {
- Var1,
- Var2,
-}
-enum Enum2 {
- Var1,
- Var2,
-}
-
-#[cfg(cfail1)]
-type ChangeTypeEnum = Enum1;
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type ChangeTypeEnum = Enum2;
-
-
-
-// Add tuple field -------------------------------------------------------------
-#[cfg(cfail1)]
-type AddTupleField = (i32, i64);
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type AddTupleField = (i32, i64, i16);
-
-
-
-// Change nested tuple field ---------------------------------------------------
-#[cfg(cfail1)]
-type ChangeNestedTupleField = (i32, (i64, i16));
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type ChangeNestedTupleField = (i32, (i64, i8));
-
-
-
-// Add type param --------------------------------------------------------------
-#[cfg(cfail1)]
-type AddTypeParam<T1> = (T1, T1);
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type AddTypeParam<T1, T2> = (T1, T2);
-
-
-
-// Add type param bound --------------------------------------------------------
-#[cfg(cfail1)]
-type AddTypeParamBound<T1> = (T1, u32);
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type AddTypeParamBound<T1: Clone> = (T1, u32);
-
-
-
-// Add type param bound in where clause ----------------------------------------
-#[cfg(cfail1)]
-type AddTypeParamBoundWhereClause<T1> where T1: Clone = (T1, u32);
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type AddTypeParamBoundWhereClause<T1> where T1: Clone+Copy = (T1, u32);
-
-
-
-// Add lifetime param ----------------------------------------------------------
-#[cfg(cfail1)]
-type AddLifetimeParam<'a> = (&'a u32, &'a u32);
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type AddLifetimeParam<'a, 'b> = (&'a u32, &'b u32);
-
-
-
-// Add lifetime param bound ----------------------------------------------------
-#[cfg(cfail1)]
-type AddLifetimeParamBound<'a, 'b> = (&'a u32, &'b u32);
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type AddLifetimeParamBound<'a, 'b: 'a> = (&'a u32, &'b u32);
-
-
-
-// Add lifetime param bound in where clause ------------------------------------
-#[cfg(cfail1)]
-type AddLifetimeParamBoundWhereClause<'a, 'b, 'c>
-where 'b: 'a
- = (&'a u32, &'b u32, &'c u32);
-
-#[cfg(not(cfail1))]
-#[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-type AddLifetimeParamBoundWhereClause<'a, 'b, 'c>
-where 'b: 'a,
- 'c: 'a
- = (&'a u32, &'b u32, &'c u32);
-
-
-
-// Change Trait Bound Indirectly -----------------------------------------------
-trait ReferencedTrait1 {}
-trait ReferencedTrait2 {}
-
-mod change_trait_bound_indirectly {
- #[cfg(cfail1)]
- use super::ReferencedTrait1 as Trait;
- #[cfg(not(cfail1))]
- use super::ReferencedTrait2 as Trait;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
- #[rustc_clean(cfg="cfail3")]
- type ChangeTraitBoundIndirectly<T: Trait> = (T, u32);
-}
-
-
-
-// Change Trait Bound Indirectly In Where Clause -------------------------------
-mod change_trait_bound_indirectly_in_where_clause {
- #[cfg(cfail1)]
- use super::ReferencedTrait1 as Trait;
- #[cfg(not(cfail1))]
- use super::ReferencedTrait2 as Trait;
-
- #[rustc_clean(cfg="cfail2", except="hir_owner,hir_owner_nodes")]
- #[rustc_clean(cfg="cfail3")]
- type ChangeTraitBoundIndirectly<T> where T : Trait = (T, u32);
-}
diff --git a/src/test/incremental/hashes/unary_and_binary_exprs.rs b/src/test/incremental/hashes/unary_and_binary_exprs.rs
deleted file mode 100644
index 18fb71635..000000000
--- a/src/test/incremental/hashes/unary_and_binary_exprs.rs
+++ /dev/null
@@ -1,509 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for unary and binary expressions.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-
-// Change constant operand of negation -----------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn const_negation() -> i32 {
- -10
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn const_negation() -> i32 {
- -1
-}
-
-
-
-// Change constant operand of bitwise not --------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn const_bitwise_not() -> i32 {
- !100
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn const_bitwise_not() -> i32 {
- !99
-}
-
-
-
-// Change variable operand of negation -----------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn var_negation(x: i32, y: i32) -> i32 {
- -x
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn var_negation(x: i32, y: i32) -> i32 {
- -y
-}
-
-
-
-// Change variable operand of bitwise not --------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn var_bitwise_not(x: i32, y: i32) -> i32 {
- !x
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn var_bitwise_not(x: i32, y: i32) -> i32 {
- !y
-}
-
-
-
-// Change variable operand of deref --------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn var_deref(x: &i32, y: &i32) -> i32 {
- *x
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn var_deref(x: &i32, y: &i32) -> i32 {
- *y
-}
-
-
-
-// Change first constant operand of addition -----------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn first_const_add() -> i32 {
- 1 + 3
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn first_const_add() -> i32 {
- 2 + 3
-}
-
-
-
-// Change second constant operand of addition -----------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn second_const_add() -> i32 {
- 1 + 2
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn second_const_add() -> i32 {
- 1 + 3
-}
-
-
-
-// Change first variable operand of addition -----------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn first_var_add(a: i32, b: i32) -> i32 {
- a + 2
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn first_var_add(a: i32, b: i32) -> i32 {
- b + 2
-}
-
-
-
-// Change second variable operand of addition ----------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn second_var_add(a: i32, b: i32) -> i32 {
- 1 + a
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn second_var_add(a: i32, b: i32) -> i32 {
- 1 + b
-}
-
-
-
-// Change operator from + to - -------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn plus_to_minus(a: i32) -> i32 {
- 1 + a
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn plus_to_minus(a: i32) -> i32 {
- 1 - a
-}
-
-
-
-// Change operator from + to * -------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn plus_to_mult(a: i32) -> i32 {
- 1 + a
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn plus_to_mult(a: i32) -> i32 {
- 1 * a
-}
-
-
-
-// Change operator from + to / -------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn plus_to_div(a: i32) -> i32 {
- 1 + a
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn plus_to_div(a: i32) -> i32 {
- 1 / a
-}
-
-
-
-// Change operator from + to % -------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn plus_to_mod(a: i32) -> i32 {
- 1 + a
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn plus_to_mod(a: i32) -> i32 {
- 1 % a
-}
-
-
-
-// Change operator from && to || -----------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn and_to_or(a: bool, b: bool) -> bool {
- a && b
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn and_to_or(a: bool, b: bool) -> bool {
- a || b
-}
-
-
-
-// Change operator from & to | -------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn bitwise_and_to_bitwise_or(a: i32) -> i32 {
- 1 & a
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn bitwise_and_to_bitwise_or(a: i32) -> i32 {
- 1 | a
-}
-
-
-
-// Change operator from & to ^ -------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn bitwise_and_to_bitwise_xor(a: i32) -> i32 {
- 1 & a
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn bitwise_and_to_bitwise_xor(a: i32) -> i32 {
- 1 ^ a
-}
-
-
-
-// Change operator from & to << ------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn bitwise_and_to_lshift(a: i32) -> i32 {
- a & 1
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn bitwise_and_to_lshift(a: i32) -> i32 {
- a << 1
-}
-
-
-
-// Change operator from & to >> ------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn bitwise_and_to_rshift(a: i32) -> i32 {
- a & 1
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn bitwise_and_to_rshift(a: i32) -> i32 {
- a >> 1
-}
-
-
-
-// Change operator from == to != -----------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn eq_to_uneq(a: i32) -> bool {
- a == 1
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn eq_to_uneq(a: i32) -> bool {
- a != 1
-}
-
-
-
-// Change operator from == to < ------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn eq_to_lt(a: i32) -> bool {
- a == 1
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn eq_to_lt(a: i32) -> bool {
- a < 1
-}
-
-
-
-// Change operator from == to > ------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn eq_to_gt(a: i32) -> bool {
- a == 1
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn eq_to_gt(a: i32) -> bool {
- a > 1
-}
-
-
-
-// Change operator from == to <= -----------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn eq_to_le(a: i32) -> bool {
- a == 1
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn eq_to_le(a: i32) -> bool {
- a <= 1
-}
-
-
-
-// Change operator from == to >= -----------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn eq_to_ge(a: i32) -> bool {
- a == 1
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn eq_to_ge(a: i32) -> bool {
- a >= 1
-}
-
-
-
-// Change type in cast expression ----------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn type_cast(a: u8) -> u64 {
- let b = a as i32;
- let c = b as u64;
- c
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir,typeck", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir,typeck", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn type_cast(a: u8) -> u64 {
- let b = a as u32;
- let c = b as u64;
- c
-}
-
-
-
-// Change value in cast expression ---------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn value_cast(a: u32) -> i32 {
- 1 as i32
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn value_cast(a: u32) -> i32 {
- 2 as i32
-}
-
-
-
-// Change place in assignment --------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn place() -> i32 {
- let mut x = 10;
- let mut y = 11;
- x = 9;
- x
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn place() -> i32 {
- let mut x = 10;
- let mut y = 11;
- y = 9;
- x
-}
-
-
-
-// Change r-value in assignment ------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn rvalue() -> i32 {
- let mut x = 10;
- x = 9;
- x
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn rvalue() -> i32 {
- let mut x = 10;
- x = 8;
- x
-}
-
-
-
-// Change index into slice -----------------------------------------------------
-#[cfg(any(cfail1,cfail4))]
-pub fn index_to_slice(s: &[u8], i: usize, j: usize) -> u8 {
- s[i]
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail2")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="cfail5")]
-#[rustc_clean(cfg="cfail6")]
-pub fn index_to_slice(s: &[u8], i: usize, j: usize) -> u8 {
- s[j]
-}
diff --git a/src/test/incremental/hashes/while_let_loops.rs b/src/test/incremental/hashes/while_let_loops.rs
deleted file mode 100644
index f81855e42..000000000
--- a/src/test/incremental/hashes/while_let_loops.rs
+++ /dev/null
@@ -1,250 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for `while let` loops.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-
-// Change loop body
-#[cfg(any(cfail1,cfail4))]
-pub fn change_loop_body() {
- let mut _x = 0;
- while let Some(0u32) = None {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_loop_body() {
- let mut _x = 0;
- while let Some(0u32) = None {
- _x = 2;
- break;
- }
-}
-
-
-
-// Change loop body
-#[cfg(any(cfail1,cfail4))]
-pub fn change_loop_condition() {
- let mut _x = 0;
- while let Some(0u32) = None {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_loop_condition() {
- let mut _x = 0;
- while let Some(1u32) = None {
- _x = 1;
- break;
- }
-}
-
-
-
-// Add break
-#[cfg(any(cfail1,cfail4))]
-pub fn add_break() {
- let mut _x = 0;
- while let Some(0u32) = None {
- _x = 1;
- // ---
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_break() {
- let mut _x = 0;
- while let Some(0u32) = None {
- _x = 1;
- break;
- }
-}
-
-
-
-// Add loop label
-#[cfg(any(cfail1,cfail4))]
-pub fn add_loop_label() {
- let mut _x = 0;
- while let Some(0u32) = None {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_loop_label() {
- let mut _x = 0;
- 'label: while let Some(0u32) = None {
- _x = 1;
- break;
- }
-}
-
-
-
-// Add loop label to break
-#[cfg(any(cfail1,cfail4))]
-pub fn add_loop_label_to_break() {
- let mut _x = 0;
- 'label: while let Some(0u32) = None {
- _x = 1;
- break ;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_loop_label_to_break() {
- let mut _x = 0;
- 'label: while let Some(0u32) = None {
- _x = 1;
- break 'label;
- }
-}
-
-
-
-// Change break label
-#[cfg(any(cfail1,cfail4))]
-pub fn change_break_label() {
- let mut _x = 0;
- 'outer: while let Some(0u32) = None {
- 'inner: while let Some(0u32) = None {
- _x = 1;
- break 'inner;
- }
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_break_label() {
- let mut _x = 0;
- 'outer: while let Some(0u32) = None {
- 'inner: while let Some(0u32) = None {
- _x = 1;
- break 'outer;
- }
- }
-}
-
-// Add loop label to continue
-#[cfg(any(cfail1,cfail4))]
-pub fn add_loop_label_to_continue() {
- let mut _x = 0;
- 'label: while let Some(0u32) = None {
- _x = 1;
- continue ;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_loop_label_to_continue() {
- let mut _x = 0;
- 'label: while let Some(0u32) = None {
- _x = 1;
- continue 'label;
- }
-}
-
-
-
-// Change continue label
-#[cfg(any(cfail1,cfail4))]
-pub fn change_continue_label() {
- let mut _x = 0;
- 'outer: while let Some(0u32) = None {
- 'inner: while let Some(0u32) = None {
- _x = 1;
- continue 'inner;
- }
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_continue_label() {
- let mut _x = 0;
- 'outer: while let Some(0u32) = None {
- 'inner: while let Some(0u32) = None {
- _x = 1;
- continue 'outer;
- }
- }
-}
-
-
-
-// Change continue to break
-#[cfg(any(cfail1,cfail4))]
-pub fn change_continue_to_break() {
- let mut _x = 0;
- while let Some(0u32) = None {
- _x = 1;
- continue;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_continue_to_break() {
- let mut _x = 0;
- while let Some(0u32) = None {
- _x = 1;
- break ;
- }
-}
diff --git a/src/test/incremental/hashes/while_loops.rs b/src/test/incremental/hashes/while_loops.rs
deleted file mode 100644
index e432cf8fe..000000000
--- a/src/test/incremental/hashes/while_loops.rs
+++ /dev/null
@@ -1,252 +0,0 @@
-// This test case tests the incremental compilation hash (ICH) implementation
-// for `while` loops.
-
-// The general pattern followed here is: Change one thing between rev1 and rev2
-// and make sure that the hash has changed, then change nothing between rev2 and
-// rev3 and make sure that the hash has not changed.
-
-// build-pass (FIXME(62277): could be check-pass?)
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// compile-flags: -Z query-dep-graph -O
-// [cfail1]compile-flags: -Zincremental-ignore-spans
-// [cfail2]compile-flags: -Zincremental-ignore-spans
-// [cfail3]compile-flags: -Zincremental-ignore-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-
-// Change loop body
-#[cfg(any(cfail1,cfail4))]
-pub fn change_loop_body() {
- let mut _x = 0;
- while true {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_loop_body() {
- let mut _x = 0;
- while true {
- _x = 2;
- break;
- }
-}
-
-
-
-// Change loop body
-#[cfg(any(cfail1,cfail4))]
-pub fn change_loop_condition() {
- let mut _x = 0;
- while true {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_loop_condition() {
- let mut _x = 0;
- while false {
- _x = 1;
- break;
- }
-}
-
-
-
-// Add break
-#[cfg(any(cfail1,cfail4))]
-pub fn add_break() {
- let mut _x = 0;
- while true {
- _x = 1;
- // ---
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir, typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_break() {
- let mut _x = 0;
- while true {
- _x = 1;
- break;
- }
-}
-
-
-
-// Add loop label
-#[cfg(any(cfail1,cfail4))]
-pub fn add_loop_label() {
- let mut _x = 0;
- while true {
- _x = 1;
- break;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_loop_label() {
- let mut _x = 0;
- 'label: while true {
- _x = 1;
- break;
- }
-}
-
-
-
-// Add loop label to break
-#[cfg(any(cfail1,cfail4))]
-pub fn add_loop_label_to_break() {
- let mut _x = 0;
- 'label: while true {
- _x = 1;
- break ;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_loop_label_to_break() {
- let mut _x = 0;
- 'label: while true {
- _x = 1;
- break 'label;
- }
-}
-
-
-
-// Change break label
-#[cfg(any(cfail1,cfail4))]
-pub fn change_break_label() {
- let mut _x = 0;
- 'outer: while true {
- 'inner: while true {
- _x = 1;
- break 'inner;
- }
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,optimized_mir,typeck")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_break_label() {
- let mut _x = 0;
- 'outer: while true {
- 'inner: while true {
- _x = 1;
- break 'outer;
- }
- }
-}
-
-
-
-// Add loop label to continue
-#[cfg(any(cfail1,cfail4))]
-pub fn add_loop_label_to_continue() {
- let mut _x = 0;
- 'label: while true {
- _x = 1;
- continue ;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes")]
-#[rustc_clean(cfg="cfail6")]
-pub fn add_loop_label_to_continue() {
- let mut _x = 0;
- 'label: while true {
- _x = 1;
- continue 'label;
- }
-}
-
-
-
-// Change continue label
-#[cfg(any(cfail1,cfail4))]
-pub fn change_continue_label() {
- let mut _x = 0;
- 'outer: while true {
- 'inner: while true {
- _x = 1;
- continue 'inner;
- }
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes,typeck")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes,typeck,optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_continue_label() {
- let mut _x = 0;
- 'outer: while true {
- 'inner: while true {
- _x = 1;
- continue 'outer;
- }
- }
-}
-
-
-
-// Change continue to break
-#[cfg(any(cfail1,cfail4))]
-pub fn change_continue_to_break() {
- let mut _x = 0;
- while true {
- _x = 1;
- continue;
- }
-}
-
-#[cfg(not(any(cfail1,cfail4)))]
-#[rustc_clean(cfg="cfail2", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail3")]
-#[rustc_clean(cfg="cfail5", except="hir_owner_nodes, optimized_mir")]
-#[rustc_clean(cfg="cfail6")]
-pub fn change_continue_to_break() {
- let mut _x = 0;
- while true {
- _x = 1;
- break ;
- }
-}
diff --git a/src/test/incremental/hello_world.rs b/src/test/incremental/hello_world.rs
deleted file mode 100644
index d5ec6e92b..000000000
--- a/src/test/incremental/hello_world.rs
+++ /dev/null
@@ -1,37 +0,0 @@
-// revisions: rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-
-fn main() { }
-
-mod x {
- #[cfg(rpass1)]
- pub fn xxxx() -> i32 {
- 1
- }
-
- #[cfg(rpass2)]
- pub fn xxxx() -> i32 {
- 2
- }
-}
-
-mod y {
- use x;
-
- #[rustc_clean(cfg="rpass2")]
- pub fn yyyy() {
- x::xxxx();
- }
-}
-
-mod z {
- use y;
-
- #[rustc_clean(cfg="rpass2")]
- pub fn z() {
- y::yyyy();
- }
-}
diff --git a/src/test/incremental/hygiene/auxiliary/cached_hygiene.rs b/src/test/incremental/hygiene/auxiliary/cached_hygiene.rs
deleted file mode 100644
index b31f60e97..000000000
--- a/src/test/incremental/hygiene/auxiliary/cached_hygiene.rs
+++ /dev/null
@@ -1,36 +0,0 @@
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-// We use #[inline(always)] to ensure that the downstream crate
-// will always load the MIR for these functions
-
-#![feature(rustc_attrs)]
-
-#[allow(unused)]
-macro_rules! first_macro {
- () => {
- println!("New call!");
- }
-}
-
-#[rustc_clean(except="hir_owner_nodes,typeck,optimized_mir,promoted_mir", cfg="rpass2")]
-#[inline(always)]
-pub fn changed_fn() {
- // This will cause additional hygiene to be generate,
- // which will cause the SyntaxContext/ExpnId raw ids to be
- // different when we write out `my_fn` to the crate metadata.
- #[cfg(rpass2)]
- first_macro!();
-}
-
-macro_rules! print_loc {
- () => {
- println!("Caller loc: {}", std::panic::Location::caller());
- }
-}
-
-#[rustc_clean(cfg="rpass2")]
-#[inline(always)]
-pub fn unchanged_fn() {
- print_loc!();
-}
diff --git a/src/test/incremental/hygiene/load_cached_hygiene.rs b/src/test/incremental/hygiene/load_cached_hygiene.rs
deleted file mode 100644
index 355d33458..000000000
--- a/src/test/incremental/hygiene/load_cached_hygiene.rs
+++ /dev/null
@@ -1,48 +0,0 @@
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-// aux-build:cached_hygiene.rs
-
-// This tests the following scenario
-// 1. A foreign crate is compiled with incremental compilation.
-// This causes hygiene information to be saved to the incr cache.
-// 2. One function is the foreign crate is modified. This causes the
-// optimized mir for an unmodified function to be loaded from the
-// incremental cache and written out to the crate metadata.
-// 3. In the process of loading and writing out this function's MIR,
-// we load hygiene information from the incremental cache and
-// write it to our metadata.
-// 4. This hygiene information is loaded by another crate (this file)
-
-// Previously, this situation would cause hygiene identifiers
-// (SyntaxContexts and ExpnIds) to get corrupted when we tried to
-// serialize the hygiene information loaded from the incr cache into
-// the metadata. Specifically, we were not resetting `orig_id`
-// for an `EpxnData` generate in the current crate, which would cause
-// us to serialize the `ExpnId` pointing to a garbage location in
-// the metadata.
-
-#![feature(rustc_attrs)]
-
-#![rustc_partition_reused(module="load_cached_hygiene-call_unchanged_function", cfg="rpass2")]
-#![rustc_partition_codegened(module="load_cached_hygiene-call_changed_function", cfg="rpass2")]
-
-
-extern crate cached_hygiene;
-
-pub mod call_unchanged_function {
-
- pub fn unchanged() {
- cached_hygiene::unchanged_fn();
- }
-}
-
-pub mod call_changed_function {
- pub fn changed() {
- cached_hygiene::changed_fn();
- }
-}
-
-pub fn main() {
- call_unchanged_function::unchanged();
- call_changed_function::changed();
-}
diff --git a/src/test/incremental/ich_method_call_trait_scope.rs b/src/test/incremental/ich_method_call_trait_scope.rs
deleted file mode 100644
index 5566506c0..000000000
--- a/src/test/incremental/ich_method_call_trait_scope.rs
+++ /dev/null
@@ -1,40 +0,0 @@
-// Check that the hash for a method call is sensitive to the traits in
-// scope.
-
-// revisions: rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-fn test<T>() { }
-
-trait Trait1 {
- fn method(&self) { }
-}
-
-impl Trait1 for () { }
-
-trait Trait2 {
- fn method(&self) { }
-}
-
-impl Trait2 for () { }
-
-mod mod3 {
- #[cfg(rpass1)]
- use Trait1;
- #[cfg(rpass2)]
- use Trait2;
-
- #[rustc_clean(except="typeck", cfg="rpass2")]
- fn bar() {
- ().method();
- }
-
- #[rustc_clean(cfg="rpass2")]
- fn baz() {
- 22; // no method call, traits in scope don't matter
- }
-}
-
-fn main() { }
diff --git a/src/test/incremental/ich_nested_items.rs b/src/test/incremental/ich_nested_items.rs
deleted file mode 100644
index 379c09575..000000000
--- a/src/test/incremental/ich_nested_items.rs
+++ /dev/null
@@ -1,23 +0,0 @@
-// Check that the hash of `foo` doesn't change just because we ordered
-// the nested items (or even added new ones).
-
-// revisions: cfail1 cfail2
-// build-pass (FIXME(62277): could be check-pass?)
-// compile-flags: -Z query-dep-graph
-
-#![crate_type = "rlib"]
-#![feature(rustc_attrs)]
-
-#[rustc_clean(except = "hir_owner_nodes", cfg = "cfail2")]
-pub fn foo() {
- #[cfg(cfail1)]
- pub fn baz() {} // order is different...
-
- #[rustc_clean(cfg = "cfail2")]
- pub fn bar() {} // but that doesn't matter.
-
- #[cfg(cfail2)]
- pub fn baz() {} // order is different...
-
- pub fn bap() {} // neither does adding a new item
-}
diff --git a/src/test/incremental/ich_resolve_results.rs b/src/test/incremental/ich_resolve_results.rs
deleted file mode 100644
index e6ab6bceb..000000000
--- a/src/test/incremental/ich_resolve_results.rs
+++ /dev/null
@@ -1,45 +0,0 @@
-// Check that the hash for `mod3::bar` changes when we change the
-// `use` to something different.
-
-// revisions: rpass1 rpass2 rpass3
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-fn test<T>() { }
-
-mod mod1 {
- pub struct Foo(pub u32);
-}
-
-mod mod2 {
- pub struct Foo(pub i64);
-}
-
-mod mod3 {
- #[cfg(rpass1)]
- use mod1::Foo;
- use test;
-
- // In rpass2 we move the use declaration.
- #[cfg(rpass2)]
- use mod1::Foo;
-
- // In rpass3 we let the declaration point to something else.
- #[cfg(rpass3)]
- use mod2::Foo;
-
- #[rustc_clean(cfg="rpass2")]
- #[rustc_clean(except="hir_owner_nodes,typeck", cfg="rpass3")]
- fn in_expr() {
- Foo(0);
- }
-
- #[rustc_clean(cfg="rpass2")]
- #[rustc_clean(except="hir_owner_nodes,typeck", cfg="rpass3")]
- fn in_type() {
- test::<Foo>();
- }
-}
-
-fn main() { }
diff --git a/src/test/incremental/incremental_proc_macro.rs b/src/test/incremental/incremental_proc_macro.rs
deleted file mode 100644
index becc1538f..000000000
--- a/src/test/incremental/incremental_proc_macro.rs
+++ /dev/null
@@ -1,16 +0,0 @@
-// aux-build:incremental_proc_macro_aux.rs
-// revisions: cfail1 cfail2
-// build-pass (FIXME(62277): could be check-pass?)
-
-// This test makes sure that we still find the proc-macro registrar function
-// when we compile proc-macros incrementally (see #47292).
-
-#![crate_type = "rlib"]
-
-#[macro_use]
-extern crate incremental_proc_macro_aux;
-
-#[derive(IncrementalMacro)]
-pub struct Foo {
- x: u32
-}
diff --git a/src/test/incremental/inlined_hir_34991/main.rs b/src/test/incremental/inlined_hir_34991/main.rs
deleted file mode 100644
index bb76a0bb8..000000000
--- a/src/test/incremental/inlined_hir_34991/main.rs
+++ /dev/null
@@ -1,23 +0,0 @@
-// Regression test for #34991: an ICE occurred here because we inline
-// some of the vector routines and give them a local def-id `X`. This
-// got hashed after codegen (`hir_owner(X)`). When we load back up, we get an
-// error because the `X` is remapped to the original def-id (in
-// libstd), and we can't hash a HIR node from std.
-
-// revisions:rpass1 rpass2
-
-#![feature(rustc_attrs)]
-
-use std::vec::Vec;
-
-pub fn foo() -> Vec<i32> {
- vec![1, 2, 3]
-}
-
-pub fn bar() {
- foo();
-}
-
-pub fn main() {
- bar();
-}
diff --git a/src/test/incremental/issue-100521-change-struct-name-assocty.rs b/src/test/incremental/issue-100521-change-struct-name-assocty.rs
deleted file mode 100644
index 7f8d1e608..000000000
--- a/src/test/incremental/issue-100521-change-struct-name-assocty.rs
+++ /dev/null
@@ -1,65 +0,0 @@
-// revisions: rpass1 rpass2
-
-pub fn foo() {
- bar();
- baz::<()>();
-}
-
-fn bar()
-where
- <() as Table>::AllColumns:,
-{
-}
-
-fn baz<W>()
-where
- W: AsQuery,
- <W as AsQuery>::Query:,
-{
-}
-
-trait AsQuery {
- type Query;
-}
-
-trait UnimplementedTrait {}
-
-impl<T> AsQuery for T
-where
- T: UnimplementedTrait,
-{
- type Query = ();
-}
-
-struct Wrapper<Expr>(Expr);
-
-impl<Ret> AsQuery for Wrapper<Ret> {
- type Query = ();
-}
-
-impl AsQuery for ()
-where
- Wrapper<<() as Table>::AllColumns>: AsQuery,
-{
- type Query = ();
-}
-
-trait Table {
- type AllColumns;
-}
-
-#[cfg(rpass1)]
-impl Table for () {
- type AllColumns = Checksum1;
-}
-#[cfg(rpass1)]
-struct Checksum1;
-
-#[cfg(rpass2)]
-impl Table for () {
- type AllColumns = Checksum2;
-}
-#[cfg(rpass2)]
-struct Checksum2;
-
-fn main() {}
diff --git a/src/test/incremental/issue-101518.rs b/src/test/incremental/issue-101518.rs
deleted file mode 100644
index 501be175f..000000000
--- a/src/test/incremental/issue-101518.rs
+++ /dev/null
@@ -1,31 +0,0 @@
-// revisions: cfail1
-// should-ice
-// error-pattern: forcing query
-// known-bug: #101518
-
-#[derive(PartialEq, Eq)]
-struct Id<'a> {
- ns: &'a str,
-}
-fn visit_struct() {
- let id = Id { ns: "random1" };
- const FLAG: Id<'static> = Id {
- ns: "needs_to_be_the_same",
- };
- match id {
- FLAG => {}
- _ => {}
- }
-}
-fn visit_struct2() {
- let id = Id { ns: "random2" };
- const FLAG: Id<'static> = Id {
- ns: "needs_to_be_the_same",
- };
- match id {
- FLAG => {}
- _ => {}
- }
-}
-
-fn main() {}
diff --git a/src/test/incremental/issue-35593.rs b/src/test/incremental/issue-35593.rs
deleted file mode 100644
index 009e37d17..000000000
--- a/src/test/incremental/issue-35593.rs
+++ /dev/null
@@ -1,12 +0,0 @@
-// Regression test for #35593. Check that we can reuse this trivially
-// equal example.
-
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-#![rustc_partition_reused(module="issue_35593", cfg="rpass2")]
-
-fn main() {
- println!("hello world");
-}
diff --git a/src/test/incremental/issue-38222.rs b/src/test/incremental/issue-38222.rs
deleted file mode 100644
index 20d4d4200..000000000
--- a/src/test/incremental/issue-38222.rs
+++ /dev/null
@@ -1,27 +0,0 @@
-// Test that debuginfo does not introduce a dependency edge to the hir_crate
-// dep-node.
-
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-#![rustc_partition_reused(module = "issue_38222-mod1", cfg = "rpass2")]
-// If codegen had added a dependency edge to the hir_crate dep-node, nothing would
-// be re-used, so checking that this module was re-used is sufficient.
-#![rustc_partition_reused(module = "issue_38222", cfg = "rpass2")]
-
-//[rpass1] compile-flags: -C debuginfo=1
-//[rpass2] compile-flags: -C debuginfo=1
-
-pub fn main() {
- mod1::some_fn();
-}
-
-mod mod1 {
- pub fn some_fn() {
- #[cfg(rpass2)]
- {}
-
- let _ = 1;
- }
-}
diff --git a/src/test/incremental/issue-39569.rs b/src/test/incremental/issue-39569.rs
deleted file mode 100644
index 881ecfca7..000000000
--- a/src/test/incremental/issue-39569.rs
+++ /dev/null
@@ -1,27 +0,0 @@
-// Regression test for a weird corner case in our dep-graph reduction
-// code. When we solve `CoerceUnsized<Foo>`, we find no impls, so we
-// don't end up with an edge to any HIR nodes, but it still gets
-// preserved in the dep graph.
-
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-use std::sync::Arc;
-
-#[cfg(rpass1)]
-struct Foo { x: usize }
-
-#[cfg(rpass1)]
-fn main() {
- let x: Arc<Foo> = Arc::new(Foo { x: 22 });
- let y: Arc<Foo> = x;
-}
-
-#[cfg(rpass2)]
-struct FooX { x: usize }
-
-#[cfg(rpass2)]
-fn main() {
- let x: Arc<FooX> = Arc::new(FooX { x: 22 });
- let y: Arc<FooX> = x;
-}
diff --git a/src/test/incremental/issue-39828/auxiliary/generic.rs b/src/test/incremental/issue-39828/auxiliary/generic.rs
deleted file mode 100644
index a5bb0d65f..000000000
--- a/src/test/incremental/issue-39828/auxiliary/generic.rs
+++ /dev/null
@@ -1,8 +0,0 @@
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![rustc_partition_reused(module="generic-fallback.cgu", cfg="rpass2")]
-#![feature(rustc_attrs)]
-
-#![crate_type="rlib"]
-pub fn foo<T>() { }
diff --git a/src/test/incremental/issue-39828/issue-39828.rs b/src/test/incremental/issue-39828/issue-39828.rs
deleted file mode 100644
index 8cef916ff..000000000
--- a/src/test/incremental/issue-39828/issue-39828.rs
+++ /dev/null
@@ -1,12 +0,0 @@
-// Regression test for #39828. If you make use of a module that
-// consists only of generics, no code is generated, just a dummy
-// module. The reduced graph consists of a single node (for that
-// module) with no inputs. Since we only serialize edges, when we
-// reload, we would consider that node dirty since it is not recreated
-// (it is not the target of any edges).
-
-// revisions:rpass1 rpass2
-// aux-build:generic.rs
-
-extern crate generic;
-fn main() { }
diff --git a/src/test/incremental/issue-42602.rs b/src/test/incremental/issue-42602.rs
deleted file mode 100644
index b8d5303fb..000000000
--- a/src/test/incremental/issue-42602.rs
+++ /dev/null
@@ -1,44 +0,0 @@
-// Regression test for #42602. It used to be that we had
-// a dep-graph like
-//
-// typeck(foo) -> FnOnce -> typeck(bar)
-//
-// This was fixed by improving the resolution of the `FnOnce` trait
-// selection node.
-
-// revisions:cfail1 cfail2 cfail3
-// compile-flags:-Zquery-dep-graph
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![feature(rustc_attrs)]
-
-fn main() {
- a::foo();
- b::bar();
-}
-
-mod a {
- #[cfg(cfail1)]
- pub fn foo() {
- let x = vec![1, 2, 3];
- let v = || ::std::mem::drop(x);
- v();
- }
-
- #[cfg(not(cfail1))]
- pub fn foo() {
- let x = vec![1, 2, 3, 4];
- let v = || ::std::mem::drop(x);
- v();
- }
-}
-
-mod b {
- #[rustc_clean(cfg="cfail2")]
- #[rustc_clean(cfg="cfail3")]
- pub fn bar() {
- let x = vec![1, 2, 3];
- let v = || ::std::mem::drop(x);
- v();
- }
-}
diff --git a/src/test/incremental/issue-49043.rs b/src/test/incremental/issue-49043.rs
deleted file mode 100644
index 8d13718b8..000000000
--- a/src/test/incremental/issue-49043.rs
+++ /dev/null
@@ -1,12 +0,0 @@
-// Regression test for hashing involving canonical variables. In this
-// test -- which has an intentional error -- the type of the value
-// being dropped winds up including a type variable. Canonicalization
-// would then produce a `?0` which -- in turn -- triggered an ICE in
-// hashing.
-
-// revisions:cfail1
-
-fn main() {
- println!("Hello, world! {}",*thread_rng().choose(&[0, 1, 2, 3]).unwrap());
- //[cfail1]~^ ERROR cannot find function `thread_rng`
-}
diff --git a/src/test/incremental/issue-49482.rs b/src/test/incremental/issue-49482.rs
deleted file mode 100644
index 042ecc0f2..000000000
--- a/src/test/incremental/issue-49482.rs
+++ /dev/null
@@ -1,30 +0,0 @@
-// aux-build:issue-49482-macro-def.rs
-// aux-build:issue-49482-reexport.rs
-// revisions: rpass1
-
-extern crate issue_49482_reexport;
-
-pub trait KvStorage
-{
- fn get(&self);
-}
-
-impl<K> KvStorage for Box<K>
-where
- K: KvStorage + ?Sized,
-{
- fn get(&self) {
- (**self).get()
- }
-}
-
-impl KvStorage for u32 {
- fn get(&self) {}
-}
-
-fn main() {
- /* force issue_49482_reexport to be loaded */
- issue_49482_reexport::foo();
-
- Box::new(2).get();
-}
diff --git a/src/test/incremental/issue-49595/auxiliary/lit_a.rs b/src/test/incremental/issue-49595/auxiliary/lit_a.rs
deleted file mode 100644
index 295a0b481..000000000
--- a/src/test/incremental/issue-49595/auxiliary/lit_a.rs
+++ /dev/null
@@ -1 +0,0 @@
-pub const A: &str = "hello";
diff --git a/src/test/incremental/issue-49595/auxiliary/lit_b.rs b/src/test/incremental/issue-49595/auxiliary/lit_b.rs
deleted file mode 100644
index 5d377edfb..000000000
--- a/src/test/incremental/issue-49595/auxiliary/lit_b.rs
+++ /dev/null
@@ -1 +0,0 @@
-pub const A: &str = "xxxxx";
diff --git a/src/test/incremental/issue-49595/issue-49595.rs b/src/test/incremental/issue-49595/issue-49595.rs
deleted file mode 100644
index 7b1096a64..000000000
--- a/src/test/incremental/issue-49595/issue-49595.rs
+++ /dev/null
@@ -1,31 +0,0 @@
-// revisions:cfail1 cfail2 cfail3
-// compile-flags: -Z query-dep-graph --test
-// build-pass
-
-#![feature(rustc_attrs)]
-#![crate_type = "rlib"]
-
-#![rustc_partition_codegened(module="issue_49595-tests", cfg="cfail2")]
-#![rustc_partition_codegened(module="issue_49595-lit_test", cfg="cfail3")]
-
-mod tests {
- #[cfg_attr(not(cfail1), test)]
- fn test() {
- }
-}
-
-
-// Checks that changing a string literal without changing its span
-// takes effect.
-
-// replacing a module to have a stable span
-#[cfg_attr(not(cfail3), path = "auxiliary/lit_a.rs")]
-#[cfg_attr(cfail3, path = "auxiliary/lit_b.rs")]
-mod lit;
-
-pub mod lit_test {
- #[test]
- fn lit_test() {
- println!("{}", ::lit::A);
- }
-}
diff --git a/src/test/incremental/issue-51409.rs b/src/test/incremental/issue-51409.rs
deleted file mode 100644
index 280094ec0..000000000
--- a/src/test/incremental/issue-51409.rs
+++ /dev/null
@@ -1,10 +0,0 @@
-// revisions: rpass1
-
-// Regression test that `infer_outlives_predicates` can be
-// used with incremental without an ICE.
-
-struct Foo<'a, T> {
- x: &'a T
-}
-
-fn main() { }
diff --git a/src/test/incremental/issue-54059.rs b/src/test/incremental/issue-54059.rs
deleted file mode 100644
index 0a5a54750..000000000
--- a/src/test/incremental/issue-54059.rs
+++ /dev/null
@@ -1,8 +0,0 @@
-// aux-build:issue-54059.rs
-// ignore-wasm32-bare no libc for ffi testing
-// ignore-windows - dealing with weird symbols issues on dylibs isn't worth it
-// revisions: rpass1
-
-extern crate issue_54059;
-
-fn main() {}
diff --git a/src/test/incremental/issue-54242.rs b/src/test/incremental/issue-54242.rs
deleted file mode 100644
index 806c84152..000000000
--- a/src/test/incremental/issue-54242.rs
+++ /dev/null
@@ -1,20 +0,0 @@
-// revisions: rpass cfail
-
-trait Tr
-where
- (Self::Arr,): Sized,
-{
- type Arr;
-
- const C: usize = 0;
-}
-
-impl Tr for str {
- #[cfg(rpass)]
- type Arr = [u8; 8];
- #[cfg(cfail)]
- type Arr = [u8; Self::C];
- //[cfail]~^ ERROR cycle detected when evaluating type-level constant
-}
-
-fn main() {}
diff --git a/src/test/incremental/issue-59523-on-implemented-is-not-unused.rs b/src/test/incremental/issue-59523-on-implemented-is-not-unused.rs
deleted file mode 100644
index fa52ca90b..000000000
--- a/src/test/incremental/issue-59523-on-implemented-is-not-unused.rs
+++ /dev/null
@@ -1,27 +0,0 @@
-// We should not see the unused_attributes lint fire for
-// rustc_on_unimplemented, but with this bug we are seeing it fire (on
-// subsequent runs) if incremental compilation is enabled.
-
-// revisions: cfail1 cfail2
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![feature(rustc_attrs)]
-#![deny(unused_attributes)]
-
-#[rustc_on_unimplemented = "invalid"]
-trait Index<Idx: ?Sized> {
- type Output: ?Sized;
- fn index(&self, index: Idx) -> &Self::Output;
-}
-
-#[rustc_on_unimplemented = "a usize is required to index into a slice"]
-impl Index<usize> for [i32] {
- type Output = i32;
- fn index(&self, index: usize) -> &i32 {
- &self[index]
- }
-}
-
-fn main() {
- Index::<usize>::index(&[1, 2, 3] as &[i32], 2);
-}
diff --git a/src/test/incremental/issue-59524-layout-scalar-valid-range-is-not-unused.rs b/src/test/incremental/issue-59524-layout-scalar-valid-range-is-not-unused.rs
deleted file mode 100644
index bfb5e539c..000000000
--- a/src/test/incremental/issue-59524-layout-scalar-valid-range-is-not-unused.rs
+++ /dev/null
@@ -1,19 +0,0 @@
-// We should not see the unused_attributes lint fire for
-// rustc_layout_scalar_valid_range_start, but with this bug we are
-// seeing it fire (on subsequent runs) if incremental compilation is
-// enabled.
-
-// revisions: cfail1 cfail2
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![feature(rustc_attrs)]
-#![deny(unused_attributes)]
-
-#[rustc_layout_scalar_valid_range_start(10)]
-#[rustc_layout_scalar_valid_range_end(30)]
-struct RestrictedRange(u32);
-const OKAY_RANGE: RestrictedRange = unsafe { RestrictedRange(20) };
-
-fn main() {
- OKAY_RANGE.0;
-}
diff --git a/src/test/incremental/issue-60629.rs b/src/test/incremental/issue-60629.rs
deleted file mode 100644
index 4807af4b3..000000000
--- a/src/test/incremental/issue-60629.rs
+++ /dev/null
@@ -1,10 +0,0 @@
-// revisions:rpass1 rpass2
-
-struct A;
-
-#[cfg(rpass2)]
-impl From<A> for () {
- fn from(_: A) {}
-}
-
-fn main() {}
diff --git a/src/test/incremental/issue-61323.rs b/src/test/incremental/issue-61323.rs
deleted file mode 100644
index 7ce47947c..000000000
--- a/src/test/incremental/issue-61323.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-// revisions: rpass cfail
-
-enum A {
- //[cfail]~^ ERROR 3:1: 3:7: recursive types `A` and `C` have infinite size [E0072]
- B(C),
-}
-
-#[cfg(rpass)]
-struct C(Box<A>);
-
-#[cfg(cfail)]
-struct C(A);
-
-fn main() {}
diff --git a/src/test/incremental/issue-61530.rs b/src/test/incremental/issue-61530.rs
deleted file mode 100644
index edb3d60ba..000000000
--- a/src/test/incremental/issue-61530.rs
+++ /dev/null
@@ -1,18 +0,0 @@
-#![feature(repr_simd, platform_intrinsics)]
-
-// revisions:rpass1 rpass2
-
-#[repr(simd)]
-struct I32x2(i32, i32);
-
-extern "platform-intrinsic" {
- fn simd_shuffle2<T, U>(x: T, y: T, idx: [u32; 2]) -> U;
-}
-
-fn main() {
- unsafe {
- const IDX: [u32; 2] = [0, 0];
- let _: I32x2 = simd_shuffle2(I32x2(1, 2), I32x2(3, 4), IDX);
- let _: I32x2 = simd_shuffle2(I32x2(1, 2), I32x2(3, 4), IDX);
- }
-}
diff --git a/src/test/incremental/issue-62649-path-collisions-happen.rs b/src/test/incremental/issue-62649-path-collisions-happen.rs
deleted file mode 100644
index ee81be76b..000000000
--- a/src/test/incremental/issue-62649-path-collisions-happen.rs
+++ /dev/null
@@ -1,13 +0,0 @@
-// revisions: rpass1 rpass2
-
-#[cfg(rpass1)]
-pub trait Something {
- fn foo();
-}
-
-#[cfg(rpass2)]
-pub struct Something {
- pub foo: u8,
-}
-
-fn main() {}
diff --git a/src/test/incremental/issue-69596.rs b/src/test/incremental/issue-69596.rs
deleted file mode 100644
index dc587fdc4..000000000
--- a/src/test/incremental/issue-69596.rs
+++ /dev/null
@@ -1,21 +0,0 @@
-// revisions: rpass1 rpass2
-
-#![allow(unused_imports)]
-
-#[macro_export]
-macro_rules! a_macro {
- () => {};
-}
-
-#[cfg(rpass1)]
-use a_macro as same_name;
-
-mod same_name {}
-
-mod needed_mod {
- fn _crash() {
- use super::same_name;
- }
-}
-
-fn main() {}
diff --git a/src/test/incremental/issue-72386.rs b/src/test/incremental/issue-72386.rs
deleted file mode 100644
index 5917152e1..000000000
--- a/src/test/incremental/issue-72386.rs
+++ /dev/null
@@ -1,21 +0,0 @@
-// revisions: rpass1 cfail1 rpass3
-// needs-asm-support
-// only-x86_64
-// Regression test for issue #72386
-// Checks that we don't ICE when switching to an invalid register
-// and back again
-
-use std::arch::asm;
-
-#[cfg(any(rpass1, rpass3))]
-fn main() {
- unsafe { asm!("nop") }
-}
-
-#[cfg(cfail1)]
-fn main() {
- unsafe {
- asm!("nop",out("invalid_reg")_)
- //[cfail1]~^ ERROR invalid register
- }
-}
diff --git a/src/test/incremental/issue-79661-missing-def-path-hash.rs b/src/test/incremental/issue-79661-missing-def-path-hash.rs
deleted file mode 100644
index f86fb33fb..000000000
--- a/src/test/incremental/issue-79661-missing-def-path-hash.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-// aux-build:issue-79661.rs
-// revisions: rpass1 rpass2 rpass3
-
-// Regression test for issue #79661
-// We were failing to copy over a DefPathHash->DefId mapping
-// from the old incremental cache to the new incremental cache
-// when we ended up forcing a query. As a result, a subsequent
-// unchanged incremental run would crash due to the missing mapping
-
-extern crate issue_79661;
-use issue_79661::Wrapper;
-
-pub struct Outer(Wrapper);
-fn main() {}
diff --git a/src/test/incremental/issue-79890-imported-crates-changed.rs b/src/test/incremental/issue-79890-imported-crates-changed.rs
deleted file mode 100644
index 93daa5ca9..000000000
--- a/src/test/incremental/issue-79890-imported-crates-changed.rs
+++ /dev/null
@@ -1,7 +0,0 @@
-// aux-build:issue-79890.rs
-// revisions:rpass1 rpass2 rpass3
-// compile-flags:--extern issue_79890 --test
-// edition:2018
-
-// Tests that we don't ICE when the set of imported crates changes
-#[cfg(rpass2)] use issue_79890::MyTrait;
diff --git a/src/test/incremental/issue-80336-invalid-span.rs b/src/test/incremental/issue-80336-invalid-span.rs
deleted file mode 100644
index 7757d9159..000000000
--- a/src/test/incremental/issue-80336-invalid-span.rs
+++ /dev/null
@@ -1,10 +0,0 @@
-// Regression test for issue #80336
-// Test that we properly handle encoding, decoding, and hashing
-// of spans with an invalid location and non-root `SyntaxContext`
-
-// revisions:rpass1 rpass2
-// only-x86_64
-
-pub fn main() {
- let _ = is_x86_feature_detected!("avx2");
-}
diff --git a/src/test/incremental/issue-80691-bad-eval-cache.rs b/src/test/incremental/issue-80691-bad-eval-cache.rs
deleted file mode 100644
index 1a644fd88..000000000
--- a/src/test/incremental/issue-80691-bad-eval-cache.rs
+++ /dev/null
@@ -1,184 +0,0 @@
-// revisions: rfail1 rfail2
-// failure-status: 101
-// error-pattern: not implemented
-
-pub trait Interner {
- type InternedVariableKinds;
-}
-
-trait RustIrDatabase<I: Interner> {
- fn associated_ty_data(&self) -> AssociatedTyDatum<I>;
- fn impl_datum(&self) -> ImplDatum<I>;
-}
-
-trait Fold<I: Interner> {
- type Result;
-}
-impl<T, I: Interner> Fold<I> for Binders<T>
-where
- T: HasInterner<Interner = I> + Fold<I>,
- <T as Fold<I>>::Result: HasInterner<Interner = I>,
- I: Interner,
-{
- type Result = Binders<T::Result>;
-}
-impl<I: Interner> Fold<I> for WhereClause<I> {
- type Result = Binders<WhereClause<I>>;
-}
-
-trait HasInterner {
- type Interner: Interner;
-}
-impl<T: HasInterner> HasInterner for Vec<T> {
- type Interner = T::Interner;
-}
-impl<T: HasInterner + ?Sized> HasInterner for &T {
- type Interner = T::Interner;
-}
-
-pub struct VariableKind<I: Interner> {
- _marker: std::marker::PhantomData<I>,
-}
-
-struct VariableKinds<I: Interner> {
- _interned: I::InternedVariableKinds,
-}
-
-struct WhereClause<I: Interner> {
- _marker: std::marker::PhantomData<I>,
-}
-impl<I: Interner> HasInterner for WhereClause<I> {
- type Interner = I;
-}
-
-struct Binders<T> {
- _marker: std::marker::PhantomData<T>,
-}
-impl<T: HasInterner> HasInterner for Binders<T> {
- type Interner = T::Interner;
-}
-impl<T> Binders<&T> {
- fn cloned(self) -> Binders<T> {
- unimplemented!()
- }
-}
-impl<T: HasInterner> Binders<T> {
- fn map_ref<'a, U, OP>(&'a self, _op: OP) -> Binders<U>
- where
- OP: FnOnce(&'a T) -> U,
- U: HasInterner<Interner = T::Interner>,
- {
- unimplemented!()
- }
-}
-impl<T, I: Interner> Binders<T>
-where
- T: Fold<I> + HasInterner<Interner = I>,
- I: Interner,
-{
- fn substitute(self) -> T::Result {
- unimplemented!()
- }
-}
-impl<V, U> IntoIterator for Binders<V>
-where
- V: HasInterner + IntoIterator<Item = U>,
- U: HasInterner<Interner = V::Interner>,
-{
- type Item = Binders<U>;
- type IntoIter = BindersIntoIterator<V>;
- fn into_iter(self) -> Self::IntoIter {
- unimplemented!()
- }
-}
-struct BindersIntoIterator<V: HasInterner> {
- _binders: VariableKinds<V::Interner>,
-}
-impl<V> Iterator for BindersIntoIterator<V>
-where
- V: HasInterner + IntoIterator,
- <V as IntoIterator>::Item: HasInterner<Interner = V::Interner>,
-{
- type Item = Binders<<V as IntoIterator>::Item>;
- fn next(&mut self) -> Option<Self::Item> {
- unimplemented!()
- }
-}
-
-struct ImplDatum<I: Interner> {
- binders: Binders<ImplDatumBound<I>>,
-}
-struct ImplDatumBound<I: Interner> {
- where_clauses: Vec<Binders<WhereClause<I>>>,
-}
-impl<I: Interner> HasInterner for ImplDatumBound<I> {
- type Interner = I;
-}
-
-struct AssociatedTyDatum<I: Interner> {
- binders: Binders<AssociatedTyDatumBound<I>>,
-}
-
-struct AssociatedTyDatumBound<I: Interner> {
- where_clauses: Vec<Binders<WhereClause<I>>>,
-}
-impl<I: Interner> HasInterner for AssociatedTyDatumBound<I> {
- type Interner = I;
-}
-
-struct ClauseBuilder<'me, I: Interner> {
- db: &'me dyn RustIrDatabase<I>,
-}
-impl<'me, I: Interner> ClauseBuilder<'me, I> {
- fn new() -> Self {
- unimplemented!()
- }
- fn push_clause(&mut self, _conditions: impl Iterator<Item = Binders<Binders<WhereClause<I>>>>) {
- unimplemented!()
- }
-}
-
-pub(crate) struct Forest<I: Interner> {
- _marker: std::marker::PhantomData<I>,
-}
-
-impl<I: Interner> Forest<I> {
- fn iter_answers<'f>(&'f self) {
- let builder = &mut ClauseBuilder::<I>::new();
- let impl_datum = builder.db.impl_datum();
- let impl_where_clauses = impl_datum
- .binders
- .map_ref(|b| &b.where_clauses)
- .into_iter()
- .map(|wc| wc.cloned().substitute());
- let associated_ty = builder.db.associated_ty_data();
- let assoc_ty_where_clauses = associated_ty
- .binders
- .map_ref(|b| &b.where_clauses)
- .into_iter()
- .map(|wc| wc.cloned().substitute());
- builder.push_clause(impl_where_clauses.chain(assoc_ty_where_clauses));
- }
-}
-
-pub struct SLGSolver {
- pub(crate) forest: Forest<ChalkIr>,
-}
-impl SLGSolver {
- fn new() -> Self {
- unimplemented!()
- }
- fn solve_multiple(&self) {
- let _answers = self.forest.iter_answers();
- }
-}
-
-pub struct ChalkIr;
-impl Interner for ChalkIr {
- type InternedVariableKinds = Vec<VariableKind<ChalkIr>>;
-}
-
-fn main() {
- let solver = SLGSolver::new();
- solver.solve_multiple();
-}
diff --git a/src/test/incremental/issue-82920-predicate-order-miscompile.rs b/src/test/incremental/issue-82920-predicate-order-miscompile.rs
deleted file mode 100644
index 793af679c..000000000
--- a/src/test/incremental/issue-82920-predicate-order-miscompile.rs
+++ /dev/null
@@ -1,31 +0,0 @@
-// revisions: rpass1 rpass2
-
-trait MyTrait: One + Two {}
-impl<T> One for T {
- fn method_one(&self) -> usize {
- 1
- }
-}
-impl<T> Two for T {
- fn method_two(&self) -> usize {
- 2
- }
-}
-impl<T: One + Two> MyTrait for T {}
-
-fn main() {
- let a: &dyn MyTrait = &true;
- assert_eq!(a.method_one(), 1);
- assert_eq!(a.method_two(), 2);
-}
-
-// Re-order traits 'One' and 'Two' between compilation
-// sessions
-
-#[cfg(rpass1)]
-trait One { fn method_one(&self) -> usize; }
-
-trait Two { fn method_two(&self) -> usize; }
-
-#[cfg(rpass2)]
-trait One { fn method_one(&self) -> usize; }
diff --git a/src/test/incremental/issue-84252-global-alloc.rs b/src/test/incremental/issue-84252-global-alloc.rs
deleted file mode 100644
index d2438df89..000000000
--- a/src/test/incremental/issue-84252-global-alloc.rs
+++ /dev/null
@@ -1,12 +0,0 @@
-// revisions: cfail1 cfail2
-// build-pass
-
-#![crate_type="lib"]
-#![crate_type="cdylib"]
-
-#[allow(unused_imports)]
-use std::alloc::System;
-
-#[cfg(cfail1)]
-#[global_allocator]
-static ALLOC: System = System;
diff --git a/src/test/incremental/issue-85197-invalid-span/auxiliary/invalid-span-helper-lib.rs b/src/test/incremental/issue-85197-invalid-span/auxiliary/invalid-span-helper-lib.rs
deleted file mode 100644
index 2453af5b6..000000000
--- a/src/test/incremental/issue-85197-invalid-span/auxiliary/invalid-span-helper-lib.rs
+++ /dev/null
@@ -1,11 +0,0 @@
-// revisions: rpass1 rpass2
-
-extern crate respan;
-
-#[macro_use]
-#[path = "invalid-span-helper-mod.rs"]
-mod invalid_span_helper_mod;
-
-// Invoke a macro from a different file - this
-// allows us to get tokens with spans from different files
-helper!(1);
diff --git a/src/test/incremental/issue-85197-invalid-span/auxiliary/invalid-span-helper-mod.rs b/src/test/incremental/issue-85197-invalid-span/auxiliary/invalid-span-helper-mod.rs
deleted file mode 100644
index 747174b1e..000000000
--- a/src/test/incremental/issue-85197-invalid-span/auxiliary/invalid-span-helper-mod.rs
+++ /dev/null
@@ -1,14 +0,0 @@
-#[macro_export]
-macro_rules! helper {
- // Use `:tt` instead of `:ident` so that we don't get a `None`-delimited group
- ($first:tt) => {
- pub fn foo<T>() {
- // The span of `$first` comes from another file,
- // so the expression `1 + $first` ends up with an
- // 'invalid' span that starts and ends in different files.
- // We use the `respan!` macro to give all tokens the same
- // `SyntaxContext`, so that the parser will try to merge the spans.
- respan::respan!(let a = 1 + $first;);
- }
- }
-}
diff --git a/src/test/incremental/issue-85197-invalid-span/auxiliary/respan.rs b/src/test/incremental/issue-85197-invalid-span/auxiliary/respan.rs
deleted file mode 100644
index 5088eab62..000000000
--- a/src/test/incremental/issue-85197-invalid-span/auxiliary/respan.rs
+++ /dev/null
@@ -1,19 +0,0 @@
-// force-host
-// no-prefer-dynamic
-
-#![crate_type = "proc-macro"]
-
-extern crate proc_macro;
-use proc_macro::TokenStream;
-
-
-/// Copies the resolution information (the `SyntaxContext`) of the first
-/// token to all other tokens in the stream. Does not recurse into groups.
-#[proc_macro]
-pub fn respan(input: TokenStream) -> TokenStream {
- let first_span = input.clone().into_iter().next().unwrap().span();
- input.into_iter().map(|mut tree| {
- tree.set_span(tree.span().resolved_at(first_span));
- tree
- }).collect()
-}
diff --git a/src/test/incremental/issue-85197-invalid-span/invalid_span_main.rs b/src/test/incremental/issue-85197-invalid-span/invalid_span_main.rs
deleted file mode 100644
index f358460b3..000000000
--- a/src/test/incremental/issue-85197-invalid-span/invalid_span_main.rs
+++ /dev/null
@@ -1,24 +0,0 @@
-// revisions: rpass1 rpass2
-// aux-build:respan.rs
-// aux-build:invalid-span-helper-lib.rs
-
-// This issue has several different parts. The high level idea is:
-// 1. We create an 'invalid' span with the help of the `respan` proc-macro,
-// The compiler attempts to prevent the creation of invalid spans by
-// refusing to join spans with different `SyntaxContext`s. We work around
-// this by applying the same `SyntaxContext` to the span of every token,
-// using `Span::resolved_at`
-// 2. We using this invalid span in the body of a function, causing it to get
-// encoded into the `optimized_mir`
-// 3. We call the function from a different crate - since the function is generic,
-// monomorphization runs, causing `optimized_mir` to get called.
-// 4. We re-run compilation using our populated incremental cache, but without
-// making any changes. When we recompile the crate containing our generic function
-// (`invalid_span_helper_lib`), we load the span from the incremental cache, and
-// write it into the crate metadata.
-
-extern crate invalid_span_helper_lib;
-
-fn main() {
- invalid_span_helper_lib::foo::<u8>();
-}
diff --git a/src/test/incremental/issue-85360-eval-obligation-ice.rs b/src/test/incremental/issue-85360-eval-obligation-ice.rs
deleted file mode 100644
index 1796c9d19..000000000
--- a/src/test/incremental/issue-85360-eval-obligation-ice.rs
+++ /dev/null
@@ -1,118 +0,0 @@
-// revisions:cfail1 cfail2
-//[cfail1] compile-flags: --crate-type=lib --edition=2021 -Zassert-incr-state=not-loaded
-//[cfail2] compile-flags: --crate-type=lib --edition=2021 -Zassert-incr-state=loaded
-// build-pass
-
-use core::any::Any;
-use core::marker::PhantomData;
-
-struct DerefWrap<T>(T);
-
-impl<T> core::ops::Deref for DerefWrap<T> {
- type Target = T;
- fn deref(&self) -> &Self::Target {
- &self.0
- }
-}
-
-struct Storage<T, D> {
- phantom: PhantomData<(T, D)>,
-}
-
-type ReadStorage<T> = Storage<T, DerefWrap<MaskedStorage<T>>>;
-
-pub trait Component {
- type Storage;
-}
-
-struct VecStorage;
-
-struct Pos;
-
-impl Component for Pos {
- type Storage = VecStorage;
-}
-
-struct GenericComp<T> {
- _t: T,
-}
-
-impl<T: 'static> Component for GenericComp<T> {
- type Storage = VecStorage;
-}
-struct ReadData {
- pos_interpdata: ReadStorage<GenericComp<Pos>>,
-}
-
-trait System {
- type SystemData;
-
- fn run(data: Self::SystemData, any: Box<dyn Any>);
-}
-
-struct Sys;
-
-impl System for Sys {
- type SystemData = (ReadData, ReadStorage<Pos>);
-
- fn run((data, pos): Self::SystemData, any: Box<dyn Any>) {
- <ReadStorage<GenericComp<Pos>> as SystemData>::setup(any);
-
- ParJoin::par_join((&pos, &data.pos_interpdata));
- }
-}
-
-trait ParJoin {
- fn par_join(self)
- where
- Self: Sized,
- {
- }
-}
-
-impl<'a, T, D> ParJoin for &'a Storage<T, D>
-where
- T: Component,
- D: core::ops::Deref<Target = MaskedStorage<T>>,
- T::Storage: Sync,
-{
-}
-
-impl<A, B> ParJoin for (A, B)
-where
- A: ParJoin,
- B: ParJoin,
-{
-}
-
-pub trait SystemData {
- fn setup(any: Box<dyn Any>);
-}
-
-impl<T: 'static> SystemData for ReadStorage<T>
-where
- T: Component,
-{
- fn setup(any: Box<dyn Any>) {
- let storage: &MaskedStorage<T> = any.downcast_ref().unwrap();
-
- <dyn Any as CastFrom<MaskedStorage<T>>>::cast(&storage);
- }
-}
-
-pub struct MaskedStorage<T: Component> {
- _inner: T::Storage,
-}
-
-pub unsafe trait CastFrom<T> {
- fn cast(t: &T) -> &Self;
-}
-
-unsafe impl<T> CastFrom<T> for dyn Any
-where
- T: Any + 'static,
-{
- fn cast(t: &T) -> &Self {
- t
- }
-}
diff --git a/src/test/incremental/issue-86753.rs b/src/test/incremental/issue-86753.rs
deleted file mode 100644
index 4d6c4354e..000000000
--- a/src/test/incremental/issue-86753.rs
+++ /dev/null
@@ -1,50 +0,0 @@
-// edition:2018
-// revisions: rpass1
-
-
-// Regression test for #86753. The `type_implements_trait` query (since moved to a method)
-// was encountering an ICE during incremental testing when hashing its arguments.
-#![warn(rust_2021_compatibility)]
-
-use std::future::Future;
-use std::pin::Pin;
-use std::task::{Poll, Context};
-
-struct LocalSet {}
-struct RunUntil<'a, F> {
- _local_set: &'a LocalSet,
- _future: F,
-}
-impl<'a, F> RunUntil<'a, F> {
- fn project<'pin>(self: Pin<&'pin mut Self>) -> Projection<'pin, 'a, F> {
- unimplemented!()
- }
-}
-
-struct Projection<'pin, 'a, F>
-where
- RunUntil<'a, F>: 'pin,
-{
- pub local_set: &'pin mut &'a LocalSet,
- pub future: Pin<&'pin mut F>,
-}
-
-impl LocalSet {
- fn with<T>(&self, _f: impl FnOnce() -> T) -> T {
- unimplemented!()
- }
-}
-impl<T: Future> Future for RunUntil<'_, T> {
- type Output = T::Output;
- fn poll(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output> {
- let me = self.project();
- me.local_set.with(|| {
- let _ = cx.waker();
- let f = me.future;
- let _ = f.poll(cx);
- Poll::Pending
- })
- }
-}
-
-fn main() {}
diff --git a/src/test/incremental/issue-92163-missing-sourcefile/auxiliary/first_crate.rs b/src/test/incremental/issue-92163-missing-sourcefile/auxiliary/first_crate.rs
deleted file mode 100644
index 134afd4fb..000000000
--- a/src/test/incremental/issue-92163-missing-sourcefile/auxiliary/first_crate.rs
+++ /dev/null
@@ -1,3 +0,0 @@
-pub enum Foo {
- Variant
-}
diff --git a/src/test/incremental/issue-92163-missing-sourcefile/auxiliary/second_crate.rs b/src/test/incremental/issue-92163-missing-sourcefile/auxiliary/second_crate.rs
deleted file mode 100644
index ab7961f38..000000000
--- a/src/test/incremental/issue-92163-missing-sourcefile/auxiliary/second_crate.rs
+++ /dev/null
@@ -1,10 +0,0 @@
-// compile-flags:--extern first_crate
-
-// Note: adding `first_crate` to the extern prelude
-// (instead of using `extern_crate`) appears to be necessary to
-// trigger the original incremental compilation bug.
-// I'm not entirely sure why this is the case
-
-pub fn make_it() -> first_crate::Foo {
- panic!()
-}
diff --git a/src/test/incremental/issue-92163-missing-sourcefile/issue_92163_main.rs b/src/test/incremental/issue-92163-missing-sourcefile/issue_92163_main.rs
deleted file mode 100644
index e9219c6f5..000000000
--- a/src/test/incremental/issue-92163-missing-sourcefile/issue_92163_main.rs
+++ /dev/null
@@ -1,31 +0,0 @@
-// aux-build:first_crate.rs
-// aux-build:second_crate.rs
-// revisions:rpass1 rpass2
-
-// Regression test for issue #92163
-// Under certain circumstances, we may end up trying to
-// decode a foreign `Span` from the incremental cache, without previously
-// having imported the `SourceFile`s from the owning crate. This can happen
-// if the `Span` comes from a transitive dependency (so we never try to resolve
-// items from the crate during expansion/resolution).
-//
-// Previously, this would result in an ICE, since we would not have loaded
-// the corresponding `SourceFile` for the `StableSourceFileId` we decoded.
-// This test verifies that the decoding of a foreign `Span` will always
-// try to import the `SourceFile`s from the foreign crate, instead of
-// relying on that having already happened during expansion.
-
-extern crate second_crate;
-
-pub struct Outer;
-
-impl Outer {
- pub fn use_it() {
- // This returns `first_crate::Foo`, causing
- // us to encode the `AdtDef `first_crate::Foo` (along with its `Span`s)
- // into the query cache for the `TypeckResults` for this function.
- second_crate::make_it();
- }
-}
-
-fn main() {}
diff --git a/src/test/incremental/issue-92987-provisional-dep-node.rs b/src/test/incremental/issue-92987-provisional-dep-node.rs
deleted file mode 100644
index a48a8373c..000000000
--- a/src/test/incremental/issue-92987-provisional-dep-node.rs
+++ /dev/null
@@ -1,24 +0,0 @@
-// revisions: rpass1 rpass2
-
-// Regression test for issue #92987
-// Tests that we properly manage `DepNode`s during trait evaluation
-// involing an auto-trait cycle.
-
-#[cfg(rpass1)]
-struct CycleOne(Box<CycleTwo>);
-
-#[cfg(rpass2)]
-enum CycleOne {
- Variant(Box<CycleTwo>)
-}
-
-struct CycleTwo(CycleOne);
-
-fn assert_send<T: Send>() {}
-
-fn bar() {
- assert_send::<CycleOne>();
- assert_send::<CycleTwo>();
-}
-
-fn main() {}
diff --git a/src/test/incremental/issue-96319-coinductive-cycle.rs b/src/test/incremental/issue-96319-coinductive-cycle.rs
deleted file mode 100644
index b5ff9112a..000000000
--- a/src/test/incremental/issue-96319-coinductive-cycle.rs
+++ /dev/null
@@ -1,34 +0,0 @@
-// edition:2018
-// revisions: rpass1 rpass2
-
-pub struct Stmt {
- pub stmt_type: StmtKind,
- #[cfg(rpass1)] pub stmt_tag: Option<LintTag>,
- #[cfg(rpass2)] pub renamed_tag: Option<LintTag>,
-}
-pub struct LintTag;
-pub enum StmtKind {
- If(If),
- Block(&'static str),
- Return(Return),
-}
-pub struct If {
- pub condition: Function,
-}
-pub struct Return {
- pub value: Function,
-}
-pub struct Function {
- pub parameters: Box<Stmt>,
-}
-pub fn start_late_pass(stmt_receiver: Box<Stmt>) {
- spawn(async { stmt_receiver });
-}
-
-pub fn spawn<T>(_: T)
-where
- T: Send,
-{
-}
-
-fn main() {}
diff --git a/src/test/incremental/krate-inherent.rs b/src/test/incremental/krate-inherent.rs
deleted file mode 100644
index 2c04e1105..000000000
--- a/src/test/incremental/krate-inherent.rs
+++ /dev/null
@@ -1,23 +0,0 @@
-// revisions: cfail1 cfail2
-// compile-flags: -Z query-dep-graph
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![rustc_partition_reused(module = "krate_inherent-x", cfg = "cfail2")]
-#![crate_type = "rlib"]
-
-pub mod x {
- pub struct Foo;
- impl Foo {
- pub fn foo(&self) {}
- }
-
- pub fn method() {
- let x: Foo = Foo;
- x.foo(); // inherent methods used to add an edge from hir_crate
- }
-}
-
-#[cfg(cfail1)]
-pub fn bar() {} // remove this unrelated fn in cfail2, which should not affect `x::method`
diff --git a/src/test/incremental/krate-inlined.rs b/src/test/incremental/krate-inlined.rs
deleted file mode 100644
index 6b1db74a3..000000000
--- a/src/test/incremental/krate-inlined.rs
+++ /dev/null
@@ -1,25 +0,0 @@
-// Regr. test that using HIR inlined from another krate does *not* add
-// a dependency from the local hir_crate node. We can't easily test that
-// directly anymore, so now we test that we get reuse.
-
-// revisions: rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![rustc_partition_reused(module = "krate_inlined-x", cfg = "rpass2")]
-
-fn main() {
- x::method();
-
- #[cfg(rpass2)]
- ()
-}
-
-mod x {
- pub fn method() {
- // use some methods that require inlining HIR from another crate:
- let mut v = vec![];
- v.push(1);
- }
-}
diff --git a/src/test/incremental/krate_reassign_34991/auxiliary/a.rs b/src/test/incremental/krate_reassign_34991/auxiliary/a.rs
deleted file mode 100644
index 69be8d3bc..000000000
--- a/src/test/incremental/krate_reassign_34991/auxiliary/a.rs
+++ /dev/null
@@ -1,3 +0,0 @@
-#![crate_type="rlib"]
-
-pub type X = u32;
diff --git a/src/test/incremental/krate_reassign_34991/main.rs b/src/test/incremental/krate_reassign_34991/main.rs
deleted file mode 100644
index c4ae19ac9..000000000
--- a/src/test/incremental/krate_reassign_34991/main.rs
+++ /dev/null
@@ -1,20 +0,0 @@
-// aux-build:a.rs
-// revisions:rpass1 rpass2
-
-#![feature(rustc_attrs)]
-
-#[cfg(rpass1)]
-extern crate a;
-
-#[cfg(rpass1)]
-pub fn use_X() -> u32 {
- let x: a::X = 22;
- x as u32
-}
-
-#[cfg(rpass2)]
-pub fn use_X() -> u32 {
- 22
-}
-
-pub fn main() { }
diff --git a/src/test/incremental/link_order/auxiliary/my_lib.rs b/src/test/incremental/link_order/auxiliary/my_lib.rs
deleted file mode 100644
index 1e7d82305..000000000
--- a/src/test/incremental/link_order/auxiliary/my_lib.rs
+++ /dev/null
@@ -1,3 +0,0 @@
-// no-prefer-dynamic
-//[cfail1] compile-flags: -lbar -lfoo --crate-type lib -Zassert-incr-state=not-loaded
-//[cfail2] compile-flags: -lfoo -lbar --crate-type lib -Zassert-incr-state=not-loaded
diff --git a/src/test/incremental/link_order/main.rs b/src/test/incremental/link_order/main.rs
deleted file mode 100644
index d211c295b..000000000
--- a/src/test/incremental/link_order/main.rs
+++ /dev/null
@@ -1,12 +0,0 @@
-// aux-build:my_lib.rs
-// error-pattern: error: linking with
-// revisions:cfail1 cfail2
-// compile-flags:-Z query-dep-graph
-
-// Tests that re-ordering the `-l` arguments used
-// when compiling an external dependency does not lead to
-// an 'unstable fingerprint' error.
-
-extern crate my_lib;
-
-fn main() {}
diff --git a/src/test/incremental/lto-in-linker.rs b/src/test/incremental/lto-in-linker.rs
deleted file mode 100644
index 0e8c1ebb9..000000000
--- a/src/test/incremental/lto-in-linker.rs
+++ /dev/null
@@ -1,9 +0,0 @@
-// revisions:cfail1 cfail2
-// compile-flags: -Z query-dep-graph --crate-type rlib -C linker-plugin-lto -O
-// no-prefer-dynamic
-// build-pass
-
-#![feature(rustc_attrs)]
-#![rustc_partition_reused(module = "lto_in_linker", cfg = "cfail2")]
-
-pub fn foo() {}
diff --git a/src/test/incremental/lto.rs b/src/test/incremental/lto.rs
deleted file mode 100644
index 2a3e3c246..000000000
--- a/src/test/incremental/lto.rs
+++ /dev/null
@@ -1,40 +0,0 @@
-// no-prefer-dynamic
-// revisions:rpass1 rpass2
-// compile-flags: -C lto
-
-mod x {
- pub struct X {
- x: u32, y: u32,
- }
-
- #[cfg(rpass1)]
- fn make() -> X {
- X { x: 22, y: 0 }
- }
-
- #[cfg(rpass2)]
- fn make() -> X {
- X { x: 11, y: 11 }
- }
-
- pub fn new() -> X {
- make()
- }
-
- pub fn sum(x: &X) -> u32 {
- x.x + x.y
- }
-}
-
-mod y {
- use x;
-
- pub fn assert_sum() -> bool {
- let x = x::new();
- x::sum(&x) == 22
- }
-}
-
-pub fn main() {
- y::assert_sum();
-}
diff --git a/src/test/incremental/macro_export.rs b/src/test/incremental/macro_export.rs
deleted file mode 100644
index 044d63fd2..000000000
--- a/src/test/incremental/macro_export.rs
+++ /dev/null
@@ -1,12 +0,0 @@
-// revisions: cfail1 cfail2 cfail3
-// build-pass (FIXME(62277): could be check-pass?)
-
-// This test case makes sure that we can compile with incremental compilation
-// enabled when there are macros exported from this crate. (See #37756)
-
-#![crate_type="rlib"]
-
-#[macro_export]
-macro_rules! some_macro {
- ($e:expr) => ($e + 1)
-}
diff --git a/src/test/incremental/mir-opt.rs b/src/test/incremental/mir-opt.rs
deleted file mode 100644
index 5bd863439..000000000
--- a/src/test/incremental/mir-opt.rs
+++ /dev/null
@@ -1,11 +0,0 @@
-// MIR optimizations can create expansions after the TyCtxt has been created.
-// This test verifies that those expansions can be decoded correctly.
-
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph -Z mir-opt-level=3
-
-fn main() {
- if std::env::var("a").is_ok() {
- println!("b");
- }
-}
diff --git a/src/test/incremental/no_mangle.rs b/src/test/incremental/no_mangle.rs
deleted file mode 100644
index b1c9b2bc3..000000000
--- a/src/test/incremental/no_mangle.rs
+++ /dev/null
@@ -1,10 +0,0 @@
-// revisions:cfail1 cfail2
-// check-pass
-// compile-flags: --crate-type cdylib
-
-#![deny(unused_attributes)]
-
-#[no_mangle]
-pub extern "C" fn rust_no_mangle() -> i32 {
- 42
-}
diff --git a/src/test/incremental/remapped_paths_cc/auxiliary/extern_crate.rs b/src/test/incremental/remapped_paths_cc/auxiliary/extern_crate.rs
deleted file mode 100644
index 627b99445..000000000
--- a/src/test/incremental/remapped_paths_cc/auxiliary/extern_crate.rs
+++ /dev/null
@@ -1,11 +0,0 @@
-//[rpass1] compile-flags: -g
-//[rpass2] compile-flags: -g
-//[rpass3] compile-flags: -g --remap-path-prefix={{src-base}}=/the/src
-
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-#[inline(always)]
-pub fn inline_fn() {
- println!("test");
-}
diff --git a/src/test/incremental/remapped_paths_cc/main.rs b/src/test/incremental/remapped_paths_cc/main.rs
deleted file mode 100644
index b01f02444..000000000
--- a/src/test/incremental/remapped_paths_cc/main.rs
+++ /dev/null
@@ -1,28 +0,0 @@
-// revisions:rpass1 rpass2 rpass3
-// compile-flags: -Z query-dep-graph -g
-// aux-build:extern_crate.rs
-
-// ignore-asmjs wasm2js does not support source maps yet
-// This test case makes sure that we detect if paths emitted into debuginfo
-// are changed, even when the change happens in an external crate.
-
-#![feature(rustc_attrs)]
-
-#![rustc_partition_reused(module="main", cfg="rpass2")]
-#![rustc_partition_reused(module="main-some_mod", cfg="rpass2")]
-#![rustc_partition_reused(module="main", cfg="rpass3")]
-#![rustc_partition_codegened(module="main-some_mod", cfg="rpass3")]
-
-extern crate extern_crate;
-
-fn main() {
- some_mod::some_fn();
-}
-
-mod some_mod {
- use extern_crate;
-
- pub fn some_fn() {
- extern_crate::inline_fn();
- }
-}
diff --git a/src/test/incremental/remove-private-item-cross-crate/auxiliary/a.rs b/src/test/incremental/remove-private-item-cross-crate/auxiliary/a.rs
deleted file mode 100644
index 279a6f078..000000000
--- a/src/test/incremental/remove-private-item-cross-crate/auxiliary/a.rs
+++ /dev/null
@@ -1,8 +0,0 @@
-#![allow(warnings)]
-#![crate_name = "a"]
-#![crate_type = "rlib"]
-
-pub fn foo(b: u8) -> u32 { b as u32 }
-
-#[cfg(rpass1)]
-fn bar() { }
diff --git a/src/test/incremental/remove-private-item-cross-crate/main.rs b/src/test/incremental/remove-private-item-cross-crate/main.rs
deleted file mode 100644
index c831ab6fe..000000000
--- a/src/test/incremental/remove-private-item-cross-crate/main.rs
+++ /dev/null
@@ -1,20 +0,0 @@
-// Test that we are able to reuse `main` even though a private
-// item was removed from the root module of crate`a`.
-
-// revisions:rpass1 rpass2
-// aux-build:a.rs
-// compile-flags: -Zquery-dep-graph
-
-#![feature(rustc_attrs)]
-#![crate_type = "bin"]
-
-#![rustc_partition_reused(module="main", cfg="rpass2")]
-
-extern crate a;
-
-pub fn main() {
- let vec: Vec<u8> = vec![0, 1, 2, 3];
- for &b in &vec {
- println!("{}", a::foo(b));
- }
-}
diff --git a/src/test/incremental/remove_crate/auxiliary/extern_crate.rs b/src/test/incremental/remove_crate/auxiliary/extern_crate.rs
deleted file mode 100644
index 1cafdf49d..000000000
--- a/src/test/incremental/remove_crate/auxiliary/extern_crate.rs
+++ /dev/null
@@ -1,3 +0,0 @@
-pub fn foo(_: u8) {
-
-}
diff --git a/src/test/incremental/remove_crate/main.rs b/src/test/incremental/remove_crate/main.rs
deleted file mode 100644
index 14b80df0d..000000000
--- a/src/test/incremental/remove_crate/main.rs
+++ /dev/null
@@ -1,24 +0,0 @@
-// Test that removing an upstream crate does not cause any trouble.
-
-// revisions:rpass1 rpass2
-// aux-build:extern_crate.rs
-
-#[cfg(rpass1)]
-extern crate extern_crate;
-
-pub fn main() {
- #[cfg(rpass1)]
- {
- extern_crate::foo(1);
- }
-
- #[cfg(rpass2)]
- {
- foo(1);
- }
-}
-
-#[cfg(rpass2)]
-pub fn foo(_: u8) {
-
-}
diff --git a/src/test/incremental/remove_source_file/auxiliary/mod.rs b/src/test/incremental/remove_source_file/auxiliary/mod.rs
deleted file mode 100644
index 96a366d96..000000000
--- a/src/test/incremental/remove_source_file/auxiliary/mod.rs
+++ /dev/null
@@ -1,3 +0,0 @@
-pub fn print_hello() {
- println!("hello");
-}
diff --git a/src/test/incremental/remove_source_file/main.rs b/src/test/incremental/remove_source_file/main.rs
deleted file mode 100644
index b2411c094..000000000
--- a/src/test/incremental/remove_source_file/main.rs
+++ /dev/null
@@ -1,24 +0,0 @@
-// This test case makes sure that the compiler doesn't crash due to a failing
-// table lookup when a source file is removed.
-
-// revisions:cfail1 cfail2
-
-// Note that we specify -g so that the SourceFiles actually get referenced by the
-// incr. comp. cache:
-// compile-flags: -Z query-dep-graph -g
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![crate_type= "rlib"]
-
-#[cfg(cfail1)]
-mod auxiliary;
-
-#[cfg(cfail1)]
-pub fn foo() {
- auxiliary::print_hello();
-}
-
-#[cfg(cfail2)]
-pub fn foo() {
- println!("hello");
-}
diff --git a/src/test/incremental/reorder_vtable.rs b/src/test/incremental/reorder_vtable.rs
deleted file mode 100644
index 8dacba633..000000000
--- a/src/test/incremental/reorder_vtable.rs
+++ /dev/null
@@ -1,41 +0,0 @@
-// revisions:rpass1 rpass2
-
-// This test case makes sure re-order the methods in a vtable will
-// trigger recompilation of codegen units that instantiate it.
-//
-// See https://github.com/rust-lang/rust/issues/89598
-
-trait Foo {
- #[cfg(rpass1)]
- fn method1(&self) -> u32;
-
- fn method2(&self) -> u32;
-
- #[cfg(rpass2)]
- fn method1(&self) -> u32;
-}
-
-impl Foo for u32 {
- fn method1(&self) -> u32 { 17 }
- fn method2(&self) -> u32 { 42 }
-}
-
-fn main() {
- // Before #89598 was fixed, the vtable allocation would be cached during
- // a MIR optimization pass and then the codegen pass for the main object
- // file would not register a dependency on it (because of the missing
- // dep-tracking).
- //
- // In the rpass2 session, the main object file would not be re-compiled,
- // thus the mod1::foo(x) call would pass in an outdated vtable, while the
- // mod1 object would expect the new, re-ordered vtable, resulting in a
- // call to the wrong method.
- let x: &dyn Foo = &0u32;
- assert_eq!(mod1::foo(x), 17);
-}
-
-mod mod1 {
- pub(super) fn foo(x: &dyn super::Foo) -> u32 {
- x.method1()
- }
-}
diff --git a/src/test/incremental/rlib-lto.rs b/src/test/incremental/rlib-lto.rs
deleted file mode 100644
index 752fee5a0..000000000
--- a/src/test/incremental/rlib-lto.rs
+++ /dev/null
@@ -1,8 +0,0 @@
-// revisions:cfail1 cfail2
-// compile-flags: -Z query-dep-graph --crate-type rlib -C lto
-// build-pass
-
-#![feature(rustc_attrs)]
-#![rustc_partition_reused(module = "rlib_lto", cfg = "cfail2")]
-
-pub fn foo() {}
diff --git a/src/test/incremental/rlib_cross_crate/auxiliary/a.rs b/src/test/incremental/rlib_cross_crate/auxiliary/a.rs
deleted file mode 100644
index 5a26df9ae..000000000
--- a/src/test/incremental/rlib_cross_crate/auxiliary/a.rs
+++ /dev/null
@@ -1,16 +0,0 @@
-// no-prefer-dynamic
-// compile-flags: -Z query-dep-graph
-
-#![crate_type="rlib"]
-
-#[cfg(rpass1)]
-pub type X = u32;
-
-#[cfg(rpass2)]
-pub type X = i32;
-
-// this version doesn't actually change anything:
-#[cfg(rpass3)]
-pub type X = i32;
-
-pub type Y = char;
diff --git a/src/test/incremental/rlib_cross_crate/b.rs b/src/test/incremental/rlib_cross_crate/b.rs
deleted file mode 100644
index 639cfc918..000000000
--- a/src/test/incremental/rlib_cross_crate/b.rs
+++ /dev/null
@@ -1,28 +0,0 @@
-// Same test as `type_alias_cross_crate`, but with
-// `no-prefer-dynamic`, ensuring that we test what happens when we
-// build rlibs (before we were only testing dylibs, which meant we
-// didn't realize we had to preserve a `bc` file as well).
-
-// aux-build:a.rs
-// revisions:rpass1 rpass2 rpass3
-// no-prefer-dynamic
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-extern crate a;
-
-#[rustc_clean(except="typeck,optimized_mir", cfg="rpass2")]
-#[rustc_clean(cfg="rpass3")]
-pub fn use_X() -> u32 {
- let x: a::X = 22;
- x as u32
-}
-
-#[rustc_clean(cfg="rpass2")]
-#[rustc_clean(cfg="rpass3")]
-pub fn use_Y() {
- let x: a::Y = 'c';
-}
-
-pub fn main() { }
diff --git a/src/test/incremental/rustc-rust-log.rs b/src/test/incremental/rustc-rust-log.rs
deleted file mode 100644
index 566f0d96d..000000000
--- a/src/test/incremental/rustc-rust-log.rs
+++ /dev/null
@@ -1,16 +0,0 @@
-// revisions: rpass1 rpass2
-// This test is just checking that we won't ICE if logging is turned
-// on; don't bother trying to compare that (copious) output.
-//
-// dont-check-compiler-stdout
-// dont-check-compiler-stderr
-// aux-build: rustc-rust-log-aux.rs
-// rustc-env:RUSTC_LOG=debug
-
-#[cfg(rpass1)]
-fn main() {}
-
-#[cfg(rpass2)]
-fn main() {
- println!();
-}
diff --git a/src/test/incremental/source_loc_macros.rs b/src/test/incremental/source_loc_macros.rs
deleted file mode 100644
index e5f04e5dc..000000000
--- a/src/test/incremental/source_loc_macros.rs
+++ /dev/null
@@ -1,55 +0,0 @@
-// This test makes sure that different expansions of the file!(), line!(),
-// column!() macros get picked up by the incr. comp. hash.
-
-// revisions:rpass1 rpass2
-
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-#[rustc_clean(cfg="rpass2")]
-fn line_same() {
- let _ = line!();
-}
-
-#[rustc_clean(cfg="rpass2")]
-fn col_same() {
- let _ = column!();
-}
-
-#[rustc_clean(cfg="rpass2")]
-fn file_same() {
- let _ = file!();
-}
-
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="rpass2")]
-fn line_different() {
- #[cfg(rpass1)]
- {
- let _ = line!();
- }
- #[cfg(rpass2)]
- {
- let _ = line!();
- }
-}
-
-#[rustc_clean(except="hir_owner_nodes,optimized_mir", cfg="rpass2")]
-fn col_different() {
- #[cfg(rpass1)]
- {
- let _ = column!();
- }
- #[cfg(rpass2)]
- {
- let _ = column!();
- }
-}
-
-fn main() {
- line_same();
- line_different();
- col_same();
- col_different();
- file_same();
-}
diff --git a/src/test/incremental/span_hash_stable/auxiliary/mod.rs b/src/test/incremental/span_hash_stable/auxiliary/mod.rs
deleted file mode 100644
index f3824db4c..000000000
--- a/src/test/incremental/span_hash_stable/auxiliary/mod.rs
+++ /dev/null
@@ -1,7 +0,0 @@
-#[cfg(rpass1)]
-pub mod sub2;
-
-pub mod sub1;
-
-#[cfg(rpass2)]
-pub mod sub2;
diff --git a/src/test/incremental/span_hash_stable/auxiliary/sub1.rs b/src/test/incremental/span_hash_stable/auxiliary/sub1.rs
deleted file mode 100644
index 70e2ea06b..000000000
--- a/src/test/incremental/span_hash_stable/auxiliary/sub1.rs
+++ /dev/null
@@ -1,5 +0,0 @@
-#[rustc_clean(cfg="rpass2")]
-pub struct SomeType {
- pub x: u32,
- pub y: i64,
-}
diff --git a/src/test/incremental/span_hash_stable/auxiliary/sub2.rs b/src/test/incremental/span_hash_stable/auxiliary/sub2.rs
deleted file mode 100644
index 1167cdb0a..000000000
--- a/src/test/incremental/span_hash_stable/auxiliary/sub2.rs
+++ /dev/null
@@ -1,5 +0,0 @@
-#[rustc_clean(cfg="rpass2")]
-pub struct SomeOtherType {
- pub a: i32,
- pub b: u64,
-}
diff --git a/src/test/incremental/span_hash_stable/main.rs b/src/test/incremental/span_hash_stable/main.rs
deleted file mode 100644
index 367416430..000000000
--- a/src/test/incremental/span_hash_stable/main.rs
+++ /dev/null
@@ -1,24 +0,0 @@
-// This test makes sure that it doesn't make a difference in which order we are
-// adding source files to the source_map. The order affects the BytePos values of
-// the spans and this test makes sure that we handle them correctly by hashing
-// file:line:column instead of raw byte offset.
-
-// ignore-asmjs wasm2js does not support source maps yet
-// revisions:rpass1 rpass2
-// compile-flags: -g -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-mod auxiliary;
-
-fn main() {
- let _ = auxiliary::sub1::SomeType {
- x: 0,
- y: 1,
- };
-
- let _ = auxiliary::sub2::SomeOtherType {
- a: 2,
- b: 3,
- };
-}
diff --git a/src/test/incremental/spans_in_type_debuginfo.rs b/src/test/incremental/spans_in_type_debuginfo.rs
deleted file mode 100644
index f5cae15a4..000000000
--- a/src/test/incremental/spans_in_type_debuginfo.rs
+++ /dev/null
@@ -1,53 +0,0 @@
-// Test that moving a type definition within a source file does not affect
-// re-compilation.
-
-// ignore-asmjs wasm2js does not support source maps yet
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph -g
-
-#![rustc_partition_reused(module="spans_in_type_debuginfo-structs", cfg="rpass2")]
-#![rustc_partition_reused(module="spans_in_type_debuginfo-enums", cfg="rpass2")]
-
-#![feature(rustc_attrs)]
-
-mod structs {
- #[cfg(rpass1)]
- pub struct X {
- pub x: u32,
- }
-
- #[cfg(rpass2)]
- pub struct X {
- pub x: u32,
- }
-
- pub fn foo(x: X) -> u32 {
- x.x
- }
-}
-
-mod enums {
- #[cfg(rpass1)]
- pub enum X {
- A { x: u32 },
- B(u32),
- }
-
- #[cfg(rpass2)]
- pub enum X {
- A { x: u32 },
- B(u32),
- }
-
- pub fn foo(x: X) -> u32 {
- match x {
- X::A { x } => x,
- X::B(x) => x,
- }
- }
-}
-
-pub fn main() {
- let _ = structs::foo(structs::X { x: 1 });
- let _ = enums::foo(enums::X::A { x: 2 });
-}
diff --git a/src/test/incremental/spans_significant_w_debuginfo.rs b/src/test/incremental/spans_significant_w_debuginfo.rs
deleted file mode 100644
index 639454cc9..000000000
--- a/src/test/incremental/spans_significant_w_debuginfo.rs
+++ /dev/null
@@ -1,21 +0,0 @@
-// This test makes sure that just changing a definition's location in the
-// source file also changes its incr. comp. hash, if debuginfo is enabled.
-
-// revisions:rpass1 rpass2 rpass3 rpass4
-
-// ignore-asmjs wasm2js does not support source maps yet
-// compile-flags: -g -Z query-dep-graph
-// [rpass3]compile-flags: -Zincremental-relative-spans
-// [rpass4]compile-flags: -Zincremental-relative-spans
-
-#![feature(rustc_attrs)]
-#![rustc_partition_codegened(module = "spans_significant_w_debuginfo", cfg = "rpass2")]
-#![rustc_partition_codegened(module = "spans_significant_w_debuginfo", cfg = "rpass4")]
-
-#[cfg(any(rpass1, rpass3))]
-pub fn main() {}
-
-#[cfg(any(rpass2, rpass4))]
-#[rustc_clean(except = "hir_owner,hir_owner_nodes,optimized_mir", cfg = "rpass2")]
-#[rustc_clean(cfg = "rpass4")]
-pub fn main() {}
diff --git a/src/test/incremental/spans_significant_w_panic.rs b/src/test/incremental/spans_significant_w_panic.rs
deleted file mode 100644
index 6f51c9729..000000000
--- a/src/test/incremental/spans_significant_w_panic.rs
+++ /dev/null
@@ -1,28 +0,0 @@
-// This test makes sure that just changing a definition's location in the
-// source file also changes its incr. comp. hash, if debuginfo is enabled.
-
-// revisions:rpass1 rpass2 rpass3 rpass4
-// [rpass3]compile-flags: -Zincremental-relative-spans
-// [rpass4]compile-flags: -Zincremental-relative-spans
-
-// compile-flags: -C overflow-checks=on -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-#![rustc_partition_codegened(module = "spans_significant_w_panic", cfg = "rpass2")]
-#![rustc_partition_codegened(module = "spans_significant_w_panic", cfg = "rpass4")]
-
-#[cfg(any(rpass1, rpass3))]
-pub fn main() {
- if std::hint::black_box(false) {
- panic!()
- }
-}
-
-#[cfg(any(rpass2, rpass4))]
-#[rustc_clean(except = "hir_owner,hir_owner_nodes,optimized_mir", cfg = "rpass2")]
-#[rustc_clean(cfg = "rpass4")]
-pub fn main() {
- if std::hint::black_box(false) {
- panic!()
- }
-}
diff --git a/src/test/incremental/spike-neg1.rs b/src/test/incremental/spike-neg1.rs
deleted file mode 100644
index 97812ffe3..000000000
--- a/src/test/incremental/spike-neg1.rs
+++ /dev/null
@@ -1,52 +0,0 @@
-// A variant of the first "spike" test that serves to test the
-// `rustc_partition_reused` and `rustc_partition_codegened` tests.
-// Here we change and say that the `x` module will be reused (when in
-// fact it will not), and then indicate that the test itself
-// should-fail (because an error will be reported, and hence the
-// revision rpass2 will not compile, despite being named rpass).
-
-// revisions:rpass1 rpass2
-// should-fail
-
-#![feature(rustc_attrs)]
-
-#![rustc_partition_reused(module="spike_neg1", cfg="rpass2")]
-#![rustc_partition_reused(module="spike_neg1-x", cfg="rpass2")] // this is wrong!
-#![rustc_partition_reused(module="spike_neg1-y", cfg="rpass2")]
-
-mod x {
- pub struct X {
- x: u32, y: u32,
- }
-
- #[cfg(rpass1)]
- fn make() -> X {
- X { x: 22, y: 0 }
- }
-
- #[cfg(rpass2)]
- fn make() -> X {
- X { x: 11, y: 11 }
- }
-
- pub fn new() -> X {
- make()
- }
-
- pub fn sum(x: &X) -> u32 {
- x.x + x.y
- }
-}
-
-mod y {
- use x;
-
- pub fn assert_sum() -> bool {
- let x = x::new();
- x::sum(&x) == 22
- }
-}
-
-pub fn main() {
- y::assert_sum();
-}
diff --git a/src/test/incremental/spike-neg2.rs b/src/test/incremental/spike-neg2.rs
deleted file mode 100644
index 3bb1914fd..000000000
--- a/src/test/incremental/spike-neg2.rs
+++ /dev/null
@@ -1,52 +0,0 @@
-// A variant of the first "spike" test that serves to test the
-// `rustc_partition_reused` and `rustc_partition_codegened` tests.
-// Here we change and say that the `y` module will be codegened (when
-// in fact it will not), and then indicate that the test itself
-// should-fail (because an error will be reported, and hence the
-// revision rpass2 will not compile, despite being named rpass).
-
-// revisions:rpass1 rpass2
-// should-fail
-
-#![feature(rustc_attrs)]
-
-#![rustc_partition_reused(module="spike_neg2", cfg="rpass2")]
-#![rustc_partition_codegened(module="spike_neg2-x", cfg="rpass2")]
-#![rustc_partition_codegened(module="spike_neg2-y", cfg="rpass2")] // this is wrong!
-
-mod x {
- pub struct X {
- x: u32, y: u32,
- }
-
- #[cfg(rpass1)]
- fn make() -> X {
- X { x: 22, y: 0 }
- }
-
- #[cfg(rpass2)]
- fn make() -> X {
- X { x: 11, y: 11 }
- }
-
- pub fn new() -> X {
- make()
- }
-
- pub fn sum(x: &X) -> u32 {
- x.x + x.y
- }
-}
-
-mod y {
- use x;
-
- pub fn assert_sum() -> bool {
- let x = x::new();
- x::sum(&x) == 22
- }
-}
-
-pub fn main() {
- y::assert_sum();
-}
diff --git a/src/test/incremental/spike.rs b/src/test/incremental/spike.rs
deleted file mode 100644
index a6a05e7c3..000000000
--- a/src/test/incremental/spike.rs
+++ /dev/null
@@ -1,49 +0,0 @@
-// A first "spike" for incremental compilation: here, we change the
-// content of the `make` function, and we find that we can reuse the
-// `y` module entirely (but not the `x` module).
-
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-#![rustc_partition_reused(module="spike", cfg="rpass2")]
-#![rustc_partition_codegened(module="spike-x", cfg="rpass2")]
-#![rustc_partition_reused(module="spike-y", cfg="rpass2")]
-
-mod x {
- pub struct X {
- x: u32, y: u32,
- }
-
- #[cfg(rpass1)]
- fn make() -> X {
- X { x: 22, y: 0 }
- }
-
- #[cfg(rpass2)]
- fn make() -> X {
- X { x: 11, y: 11 }
- }
-
- pub fn new() -> X {
- make()
- }
-
- pub fn sum(x: &X) -> u32 {
- x.x + x.y
- }
-}
-
-mod y {
- use x;
-
- pub fn assert_sum() -> bool {
- let x = x::new();
- x::sum(&x) == 22
- }
-}
-
-pub fn main() {
- y::assert_sum();
-}
diff --git a/src/test/incremental/split_debuginfo_cached.rs b/src/test/incremental/split_debuginfo_cached.rs
deleted file mode 100644
index ba8385f89..000000000
--- a/src/test/incremental/split_debuginfo_cached.rs
+++ /dev/null
@@ -1,25 +0,0 @@
-// Check that compiling with packed Split DWARF twice succeeds. This should confirm that DWARF
-// objects are cached as work products and available to the incremental compilation for `thorin` to
-// pack into a DWARF package.
-
-// ignore-tidy-linelength
-// only-x86_64-unknown-linux-gnu
-// revisions:rpass1 rpass2
-
-// [rpass1]compile-flags: -g -Zquery-dep-graph -Csplit-debuginfo=packed -Zsplit-dwarf-kind=split
-// [rpass2]compile-flags: -g -Zquery-dep-graph -Csplit-debuginfo=packed -Zsplit-dwarf-kind=split
-
-#![feature(rustc_attrs)]
-// For `rpass2`, nothing has changed so everything should re-used.
-#![rustc_partition_reused(module = "split_debuginfo_cached", cfg = "rpass2")]
-#![rustc_partition_reused(module = "split_debuginfo_cached-another_module", cfg = "rpass2")]
-
-mod another_module {
- pub fn foo() -> &'static str {
- "hello world"
- }
-}
-
-pub fn main() {
- println!("{}", another_module::foo());
-}
diff --git a/src/test/incremental/split_debuginfo_mode.rs b/src/test/incremental/split_debuginfo_mode.rs
deleted file mode 100644
index edc1a80d3..000000000
--- a/src/test/incremental/split_debuginfo_mode.rs
+++ /dev/null
@@ -1,33 +0,0 @@
-// This test case makes sure that changing split-debuginfo commandline options triggers a full re-compilation.
-// We only test on x86_64-unknown-linux-gnu because there all combinations split-debuginfo settings are valid
-// and the test is platform-independent otherwise.
-
-// ignore-tidy-linelength
-// only-x86_64-unknown-linux-gnu
-// revisions:rpass1 rpass2 rpass3 rpass4
-
-// [rpass1]compile-flags: -Zquery-dep-graph -Csplit-debuginfo=unpacked -Zsplit-dwarf-kind=single -Zsplit-dwarf-inlining=on
-// [rpass2]compile-flags: -Zquery-dep-graph -Csplit-debuginfo=packed -Zsplit-dwarf-kind=single -Zsplit-dwarf-inlining=on
-// [rpass3]compile-flags: -Zquery-dep-graph -Csplit-debuginfo=packed -Zsplit-dwarf-kind=split -Zsplit-dwarf-inlining=on
-// [rpass4]compile-flags: -Zquery-dep-graph -Csplit-debuginfo=packed -Zsplit-dwarf-kind=split -Zsplit-dwarf-inlining=off
-
-#![feature(rustc_attrs)]
-// For rpass2 we change -Csplit-debuginfo and thus expect every CGU to be recompiled
-#![rustc_partition_codegened(module = "split_debuginfo_mode", cfg = "rpass2")]
-#![rustc_partition_codegened(module = "split_debuginfo_mode-another_module", cfg = "rpass2")]
-// For rpass3 we change -Zsplit-dwarf-kind and thus also expect every CGU to be recompiled
-#![rustc_partition_codegened(module = "split_debuginfo_mode", cfg = "rpass3")]
-#![rustc_partition_codegened(module = "split_debuginfo_mode-another_module", cfg = "rpass3")]
-// For rpass4 we change -Zsplit-dwarf-inlining and thus also expect every CGU to be recompiled
-#![rustc_partition_codegened(module = "split_debuginfo_mode", cfg = "rpass4")]
-#![rustc_partition_codegened(module = "split_debuginfo_mode-another_module", cfg = "rpass4")]
-
-mod another_module {
- pub fn foo() -> &'static str {
- "hello world"
- }
-}
-
-pub fn main() {
- println!("{}", another_module::foo());
-}
diff --git a/src/test/incremental/static_cycle/b.rs b/src/test/incremental/static_cycle/b.rs
deleted file mode 100644
index 064213fba..000000000
--- a/src/test/incremental/static_cycle/b.rs
+++ /dev/null
@@ -1,9 +0,0 @@
-// revisions:rpass1 rpass2
-
-#![cfg_attr(rpass2, warn(dead_code))]
-
-pub static mut BAA: *const i8 = unsafe { &BOO as *const _ as *const i8 };
-
-pub static mut BOO: *const i8 = unsafe { &BAA as *const _ as *const i8 };
-
-fn main() {}
diff --git a/src/test/incremental/static_refering_to_other_static/issue-49081.rs b/src/test/incremental/static_refering_to_other_static/issue-49081.rs
deleted file mode 100644
index 8e3715d1d..000000000
--- a/src/test/incremental/static_refering_to_other_static/issue-49081.rs
+++ /dev/null
@@ -1,8 +0,0 @@
-// https://github.com/rust-lang/rust/issues/49081
-
-// revisions:rpass1 rpass2
-
-pub static A: i32 = 42;
-pub static B: &i32 = &A;
-
-fn main() {}
diff --git a/src/test/incremental/static_refering_to_other_static2/issue.rs b/src/test/incremental/static_refering_to_other_static2/issue.rs
deleted file mode 100644
index 720bb1e22..000000000
--- a/src/test/incremental/static_refering_to_other_static2/issue.rs
+++ /dev/null
@@ -1,10 +0,0 @@
-// revisions:rpass1 rpass2
-
-#[cfg(rpass1)]
-pub static A: i32 = 42;
-#[cfg(rpass2)]
-pub static A: i32 = 43;
-
-pub static B: &i32 = &A;
-
-fn main() {}
diff --git a/src/test/incremental/static_refering_to_other_static3/issue.rs b/src/test/incremental/static_refering_to_other_static3/issue.rs
deleted file mode 100644
index 80999813d..000000000
--- a/src/test/incremental/static_refering_to_other_static3/issue.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-// revisions:rpass1 rpass2
-
-#[cfg(rpass1)]
-pub static A: u8 = 42;
-#[cfg(rpass2)]
-pub static A: u8 = 43;
-
-static B: &u8 = &C.1;
-static C: (&&u8, u8) = (&B, A);
-
-fn main() {
- assert_eq!(*B, A);
- assert_eq!(**C.0, A);
- assert_eq!(C.1, A);
-}
diff --git a/src/test/incremental/static_stable_hash/issue-49301.rs b/src/test/incremental/static_stable_hash/issue-49301.rs
deleted file mode 100644
index fdd05c72c..000000000
--- a/src/test/incremental/static_stable_hash/issue-49301.rs
+++ /dev/null
@@ -1,18 +0,0 @@
-// https://github.com/rust-lang/rust/issues/49081
-
-// revisions:rpass1 rpass2
-
-#[cfg(rpass1)]
-pub static A: &str = "hello";
-#[cfg(rpass2)]
-pub static A: &str = "xxxxx";
-
-#[cfg(rpass1)]
-fn main() {
- assert_eq!(A, "hello");
-}
-
-#[cfg(rpass2)]
-fn main() {
- assert_eq!(A, "xxxxx");
-}
diff --git a/src/test/incremental/string_constant.rs b/src/test/incremental/string_constant.rs
deleted file mode 100644
index cae7b4aab..000000000
--- a/src/test/incremental/string_constant.rs
+++ /dev/null
@@ -1,47 +0,0 @@
-// revisions: cfail1 cfail2 cfail3 cfail4
-// compile-flags: -Z query-dep-graph
-// [cfail3]compile-flags: -Zincremental-relative-spans
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-#![crate_type = "rlib"]
-
-// Here the only thing which changes is the string constant in `x`.
-// Therefore, the compiler deduces (correctly) that typeck is not
-// needed even for callers of `x`.
-
-pub mod x {
- #[cfg(any(cfail1, cfail3))]
- pub fn x() {
- println!("{}", "1");
- }
-
- #[cfg(any(cfail2, cfail4))]
- #[rustc_clean(except = "hir_owner,hir_owner_nodes,optimized_mir,promoted_mir", cfg = "cfail2")]
- #[rustc_clean(except = "hir_owner_nodes,promoted_mir", cfg = "cfail4")]
- pub fn x() {
- println!("{}", "2");
- }
-}
-
-pub mod y {
- use x;
-
- #[rustc_clean(cfg = "cfail2")]
- #[rustc_clean(cfg = "cfail4")]
- pub fn y() {
- x::x();
- }
-}
-
-pub mod z {
- use y;
-
- #[rustc_clean(cfg = "cfail2")]
- #[rustc_clean(cfg = "cfail4")]
- pub fn z() {
- y::y();
- }
-}
diff --git a/src/test/incremental/struct_add_field.rs b/src/test/incremental/struct_add_field.rs
deleted file mode 100644
index 720854f16..000000000
--- a/src/test/incremental/struct_add_field.rs
+++ /dev/null
@@ -1,39 +0,0 @@
-// Test incremental compilation tracking where we change field names
-// in between revisions (hashing should be stable).
-
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-pub struct X {
- pub x: u32,
-
- #[cfg(rpass2)]
- pub x2: u32,
-}
-
-pub struct EmbedX {
- x: X
-}
-
-pub struct Y {
- pub y: char
-}
-
-#[rustc_clean(except="fn_sig,typeck", cfg="rpass2")]
-pub fn use_X(x: X) -> u32 {
- x.x as u32
-}
-
-#[rustc_clean(except="typeck", cfg="rpass2")]
-pub fn use_EmbedX(embed: EmbedX) -> u32 {
- embed.x.x as u32
-}
-
-#[rustc_clean(cfg="rpass2")]
-pub fn use_Y() {
- let x: Y = Y { y: 'c' };
-}
-
-pub fn main() { }
diff --git a/src/test/incremental/struct_change_field_name.rs b/src/test/incremental/struct_change_field_name.rs
deleted file mode 100644
index a7c79e9d7..000000000
--- a/src/test/incremental/struct_change_field_name.rs
+++ /dev/null
@@ -1,47 +0,0 @@
-// Test incremental compilation tracking where we change field names
-// in between revisions (hashing should be stable).
-
-// revisions:rpass1 cfail2
-// compile-flags: -Z query-dep-graph
-// [cfail2] compile-flags: -Z query-dep-graph -Z assert-incr-state=loaded
-
-#![feature(rustc_attrs)]
-
-#[cfg(rpass1)]
-pub struct X {
- pub x: u32
-}
-
-#[cfg(cfail2)]
-pub struct X {
- pub y: u32
-}
-
-pub struct EmbedX {
- x: X
-}
-
-pub struct Y {
- pub y: char
-}
-
-#[rustc_clean(except="typeck", cfg="cfail2")]
-pub fn use_X() -> u32 {
- let x: X = X { x: 22 };
- //[cfail2]~^ ERROR struct `X` has no field named `x`
- x.x as u32
- //[cfail2]~^ ERROR no field `x` on type `X`
-}
-
-#[rustc_clean(except="typeck", cfg="cfail2")]
-pub fn use_EmbedX(embed: EmbedX) -> u32 {
- embed.x.x as u32
- //[cfail2]~^ ERROR no field `x` on type `X`
-}
-
-#[rustc_clean(cfg="cfail2")]
-pub fn use_Y() {
- let x: Y = Y { y: 'c' };
-}
-
-pub fn main() { }
diff --git a/src/test/incremental/struct_change_field_type.rs b/src/test/incremental/struct_change_field_type.rs
deleted file mode 100644
index 37d2fba99..000000000
--- a/src/test/incremental/struct_change_field_type.rs
+++ /dev/null
@@ -1,44 +0,0 @@
-// Test incremental compilation tracking where we change nothing
-// in between revisions (hashing should be stable).
-
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-#[cfg(rpass1)]
-pub struct X {
- pub x: u32
-}
-
-#[cfg(rpass2)]
-pub struct X {
- pub x: i32
-}
-
-pub struct EmbedX {
- x: X
-}
-
-pub struct Y {
- pub y: char
-}
-
-#[rustc_clean(except="typeck", cfg="rpass2")]
-pub fn use_X() -> u32 {
- let x: X = X { x: 22 };
- x.x as u32
-}
-
-#[rustc_clean(except="typeck", cfg="rpass2")]
-pub fn use_EmbedX(x: EmbedX) -> u32 {
- let x: X = X { x: 22 };
- x.x as u32
-}
-
-#[rustc_clean(cfg="rpass2")]
-pub fn use_Y() {
- let x: Y = Y { y: 'c' };
-}
-
-pub fn main() { }
diff --git a/src/test/incremental/struct_change_field_type_cross_crate/auxiliary/a.rs b/src/test/incremental/struct_change_field_type_cross_crate/auxiliary/a.rs
deleted file mode 100644
index d3ddb32c3..000000000
--- a/src/test/incremental/struct_change_field_type_cross_crate/auxiliary/a.rs
+++ /dev/null
@@ -1,19 +0,0 @@
-#![crate_type="rlib"]
-
- #[cfg(rpass1)]
-pub struct X {
- pub x: u32
-}
-
-#[cfg(rpass2)]
-pub struct X {
- pub x: i32
-}
-
-pub struct EmbedX {
- pub x: X
-}
-
-pub struct Y {
- pub y: char
-}
diff --git a/src/test/incremental/struct_change_field_type_cross_crate/b.rs b/src/test/incremental/struct_change_field_type_cross_crate/b.rs
deleted file mode 100644
index c78207bcb..000000000
--- a/src/test/incremental/struct_change_field_type_cross_crate/b.rs
+++ /dev/null
@@ -1,27 +0,0 @@
-// aux-build:a.rs
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-extern crate a;
-
-use a::*;
-
-#[rustc_clean(except="typeck", cfg="rpass2")]
-pub fn use_X() -> u32 {
- let x: X = X { x: 22 };
- x.x as u32
-}
-
-#[rustc_clean(except="typeck", cfg="rpass2")]
-pub fn use_EmbedX(embed: EmbedX) -> u32 {
- embed.x.x as u32
-}
-
-#[rustc_clean(cfg="rpass2")]
-pub fn use_Y() {
- let x: Y = Y { y: 'c' };
-}
-
-pub fn main() { }
diff --git a/src/test/incremental/struct_change_nothing.rs b/src/test/incremental/struct_change_nothing.rs
deleted file mode 100644
index de30c818c..000000000
--- a/src/test/incremental/struct_change_nothing.rs
+++ /dev/null
@@ -1,44 +0,0 @@
-// Test incremental compilation tracking where we change nothing
-// in between revisions (hashing should be stable).
-
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-#[cfg(rpass1)]
-pub struct X {
- pub x: u32
-}
-
-#[cfg(rpass2)]
-pub struct X {
- pub x: u32
-}
-
-pub struct EmbedX {
- x: X
-}
-
-pub struct Y {
- pub y: char
-}
-
-#[rustc_clean(cfg="rpass2")]
-pub fn use_X() -> u32 {
- let x: X = X { x: 22 };
- x.x as u32
-}
-
-#[rustc_clean(cfg="rpass2")]
-pub fn use_EmbedX(x: EmbedX) -> u32 {
- let x: X = X { x: 22 };
- x.x as u32
-}
-
-#[rustc_clean(cfg="rpass2")]
-pub fn use_Y() {
- let x: Y = Y { y: 'c' };
-}
-
-pub fn main() { }
diff --git a/src/test/incremental/struct_remove_field.rs b/src/test/incremental/struct_remove_field.rs
deleted file mode 100644
index b97a87e09..000000000
--- a/src/test/incremental/struct_remove_field.rs
+++ /dev/null
@@ -1,43 +0,0 @@
-// Test incremental compilation tracking where we change field names
-// in between revisions (hashing should be stable).
-
-// revisions:rpass1 rpass2
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-#[cfg(rpass1)]
-pub struct X {
- pub x: u32,
- pub x2: u32,
-}
-
-#[cfg(rpass2)]
-pub struct X {
- pub x: u32,
-}
-
-pub struct EmbedX {
- x: X
-}
-
-pub struct Y {
- pub y: char
-}
-
-#[rustc_clean(except="typeck,fn_sig", cfg="rpass2")]
-pub fn use_X(x: X) -> u32 {
- x.x as u32
-}
-
-#[rustc_clean(except="typeck", cfg="rpass2")]
-pub fn use_EmbedX(embed: EmbedX) -> u32 {
- embed.x.x as u32
-}
-
-#[rustc_clean(cfg="rpass2")]
-pub fn use_Y() {
- let x: Y = Y { y: 'c' };
-}
-
-pub fn main() { }
diff --git a/src/test/incremental/thinlto/cgu_invalidated_via_import.rs b/src/test/incremental/thinlto/cgu_invalidated_via_import.rs
deleted file mode 100644
index 5fe435d79..000000000
--- a/src/test/incremental/thinlto/cgu_invalidated_via_import.rs
+++ /dev/null
@@ -1,48 +0,0 @@
-// This test checks that the LTO phase is re-done for CGUs that import something
-// via ThinLTO and that imported thing changes while the definition of the CGU
-// stays untouched.
-
-// revisions: cfail1 cfail2 cfail3
-// compile-flags: -Z query-dep-graph -O
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-#![rustc_expected_cgu_reuse(module="cgu_invalidated_via_import-foo",
- cfg="cfail2",
- kind="no")]
-#![rustc_expected_cgu_reuse(module="cgu_invalidated_via_import-foo",
- cfg="cfail3",
- kind="post-lto")]
-
-#![rustc_expected_cgu_reuse(module="cgu_invalidated_via_import-bar",
- cfg="cfail2",
- kind="pre-lto")]
-#![rustc_expected_cgu_reuse(module="cgu_invalidated_via_import-bar",
- cfg="cfail3",
- kind="post-lto")]
-
-mod foo {
-
- // Trivial functions like this one are imported very reliably by ThinLTO.
- #[cfg(cfail1)]
- pub fn inlined_fn() -> u32 {
- 1234
- }
-
- #[cfg(not(cfail1))]
- pub fn inlined_fn() -> u32 {
- // See `cgu_keeps_identical_fn.rs` for why this is different
- // from the other version of this function.
- 12345
- }
-}
-
-pub mod bar {
- use foo::inlined_fn;
-
- pub fn caller() -> u32 {
- inlined_fn()
- }
-}
diff --git a/src/test/incremental/thinlto/cgu_invalidated_when_export_added.rs b/src/test/incremental/thinlto/cgu_invalidated_when_export_added.rs
deleted file mode 100644
index 95f3b8ae4..000000000
--- a/src/test/incremental/thinlto/cgu_invalidated_when_export_added.rs
+++ /dev/null
@@ -1,26 +0,0 @@
-// revisions: cfail1 cfail2
-// build-pass
-
-// rust-lang/rust#69798:
-//
-// This is analogous to cgu_invalidated_when_import_added, but it covers a
-// problem uncovered where a change to the *export* set caused a link failure
-// when reusing post-LTO optimized object code.
-
-pub struct Foo {}
-impl Drop for Foo {
- fn drop(&mut self) {
- println!("Dropping Foo");
- }
-}
-#[no_mangle]
-pub extern "C" fn run() {
- thread_local! { pub static FOO : Foo = Foo { } ; }
-
- #[cfg(cfail2)]
- {
- FOO.with(|_f| ())
- }
-}
-
-pub fn main() { run() }
diff --git a/src/test/incremental/thinlto/cgu_invalidated_when_export_removed.rs b/src/test/incremental/thinlto/cgu_invalidated_when_export_removed.rs
deleted file mode 100644
index e86ebd354..000000000
--- a/src/test/incremental/thinlto/cgu_invalidated_when_export_removed.rs
+++ /dev/null
@@ -1,26 +0,0 @@
-// revisions: cfail1 cfail2
-// build-pass
-
-// rust-lang/rust#69798:
-//
-// This is analogous to cgu_invalidated_when_export_added, but it covers the
-// other direction. This is analogous to cgu_invalidated_when_import_added: we
-// include it, because it may uncover bugs in variant implementation strategies.
-
-pub struct Foo {}
-impl Drop for Foo {
- fn drop(&mut self) {
- println!("Dropping Foo");
- }
-}
-#[no_mangle]
-pub extern "C" fn run() {
- thread_local! { pub static FOO : Foo = Foo { } ; }
-
- #[cfg(cfail1)]
- {
- FOO.with(|_f| ())
- }
-}
-
-pub fn main() { run() }
diff --git a/src/test/incremental/thinlto/cgu_invalidated_when_import_added.rs b/src/test/incremental/thinlto/cgu_invalidated_when_import_added.rs
deleted file mode 100644
index 9c17c8745..000000000
--- a/src/test/incremental/thinlto/cgu_invalidated_when_import_added.rs
+++ /dev/null
@@ -1,62 +0,0 @@
-// revisions: cfail1 cfail2
-// compile-flags: -O -Zhuman-readable-cgu-names -Cllvm-args=-import-instr-limit=10
-// build-pass
-
-// rust-lang/rust#59535:
-//
-// This is analogous to cgu_invalidated_when_import_removed.rs, but it covers
-// the other direction:
-//
-// We start with a call-graph like `[A] -> [B -> D] [C]` (where the letters are
-// functions and the modules are enclosed in `[]`), and add a new call `D <- C`,
-// yielding the new call-graph: `[A] -> [B -> D] <- [C]`
-//
-// The effect of this is that the compiler previously classfied `D` as internal
-// and the import-set of `[A]` to be just `B`. But after adding the `D <- C` call,
-// `D` is no longer classified as internal, and the import-set of `[A]` becomes
-// both `B` and `D`.
-//
-// We check this case because an early proposed pull request included an
-// assertion that the import-sets monotonically decreased over time, a claim
-// which this test case proves to be false.
-
-fn main() {
- foo::foo();
- bar::baz();
-}
-
-mod foo {
-
- // In cfail1, ThinLTO decides that foo() does not get inlined into main, and
- // instead bar() gets inlined into foo().
- // In cfail2, foo() gets inlined into main.
- pub fn foo(){
- bar()
- }
-
- // This function needs to be big so that it does not get inlined by ThinLTO
- // but *does* get inlined into foo() when it is declared `internal` in
- // cfail1 (alone).
- pub fn bar(){
- println!("quux1");
- println!("quux2");
- println!("quux3");
- println!("quux4");
- println!("quux5");
- println!("quux6");
- println!("quux7");
- println!("quux8");
- println!("quux9");
- }
-}
-
-mod bar {
-
- #[inline(never)]
- pub fn baz() {
- #[cfg(cfail2)]
- {
- crate::foo::bar();
- }
- }
-}
diff --git a/src/test/incremental/thinlto/cgu_invalidated_when_import_removed.rs b/src/test/incremental/thinlto/cgu_invalidated_when_import_removed.rs
deleted file mode 100644
index fc53acf75..000000000
--- a/src/test/incremental/thinlto/cgu_invalidated_when_import_removed.rs
+++ /dev/null
@@ -1,74 +0,0 @@
-// revisions: cfail1 cfail2
-// compile-flags: -O -Zhuman-readable-cgu-names -Cllvm-args=-import-instr-limit=10
-// build-pass
-
-// rust-lang/rust#59535:
-//
-// Consider a call-graph like `[A] -> [B -> D] <- [C]` (where the letters are
-// functions and the modules are enclosed in `[]`)
-//
-// In our specific instance, the earlier compilations were inlining the call
-// to`B` into `A`; thus `A` ended up with an external reference to the symbol `D`
-// in its object code, to be resolved at subsequent link time. The LTO import
-// information provided by LLVM for those runs reflected that information: it
-// explicitly says during those runs, `B` definition and `D` declaration were
-// imported into `[A]`.
-//
-// The change between incremental builds was that the call `D <- C` was removed.
-//
-// That change, coupled with other decisions within `rustc`, made the compiler
-// decide to make `D` an internal symbol (since it was no longer accessed from
-// other codegen units, this makes sense locally). And then the definition of
-// `D` was inlined into `B` and `D` itself was eliminated entirely.
-//
-// The current LTO import information reported that `B` alone is imported into
-// `[A]` for the *current compilation*. So when the Rust compiler surveyed the
-// dependence graph, it determined that nothing `[A]` imports changed since the
-// last build (and `[A]` itself has not changed either), so it chooses to reuse
-// the object code generated during the previous compilation.
-//
-// But that previous object code has an unresolved reference to `D`, and that
-// causes a link time failure!
-
-fn main() {
- foo::foo();
- bar::baz();
-}
-
-mod foo {
-
- // In cfail1, foo() gets inlined into main.
- // In cfail2, ThinLTO decides that foo() does not get inlined into main, and
- // instead bar() gets inlined into foo(). But faulty logic in our incr.
- // ThinLTO implementation thought that `main()` is unchanged and thus reused
- // the object file still containing a call to the now non-existent bar().
- pub fn foo(){
- bar()
- }
-
- // This function needs to be big so that it does not get inlined by ThinLTO
- // but *does* get inlined into foo() once it is declared `internal` in
- // cfail2.
- pub fn bar(){
- println!("quux1");
- println!("quux2");
- println!("quux3");
- println!("quux4");
- println!("quux5");
- println!("quux6");
- println!("quux7");
- println!("quux8");
- println!("quux9");
- }
-}
-
-mod bar {
-
- #[inline(never)]
- pub fn baz() {
- #[cfg(cfail1)]
- {
- crate::foo::bar();
- }
- }
-}
diff --git a/src/test/incremental/thinlto/cgu_keeps_identical_fn.rs b/src/test/incremental/thinlto/cgu_keeps_identical_fn.rs
deleted file mode 100644
index 31f329a7f..000000000
--- a/src/test/incremental/thinlto/cgu_keeps_identical_fn.rs
+++ /dev/null
@@ -1,72 +0,0 @@
-// This test is almost identical to `cgu_invalided_via_import`, except that
-// the two versions of `inline_fn` are identical. Neither version of `inlined_fn`
-// ends up with any spans in its LLVM bitecode, so LLVM is able to skip
-// re-building any modules which import 'inlined_fn'
-
-// revisions: cfail1 cfail2 cfail3 cfail4 cfail5 cfail6
-// [cfail4]compile-flags: -Zincremental-relative-spans
-// [cfail5]compile-flags: -Zincremental-relative-spans
-// [cfail6]compile-flags: -Zincremental-relative-spans
-// compile-flags: -Z query-dep-graph -O
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![feature(rustc_attrs)]
-#![crate_type = "rlib"]
-#![rustc_expected_cgu_reuse(module = "cgu_keeps_identical_fn-foo", cfg = "cfail2", kind = "no")]
-#![rustc_expected_cgu_reuse(
- module = "cgu_keeps_identical_fn-foo",
- cfg = "cfail3",
- kind = "post-lto"
-)]
-#![rustc_expected_cgu_reuse(
- module = "cgu_keeps_identical_fn-foo",
- cfg = "cfail5",
- kind = "post-lto"
-)]
-#![rustc_expected_cgu_reuse(
- module = "cgu_keeps_identical_fn-foo",
- cfg = "cfail6",
- kind = "post-lto"
-)]
-#![rustc_expected_cgu_reuse(
- module = "cgu_keeps_identical_fn-bar",
- cfg = "cfail2",
- kind = "post-lto"
-)]
-#![rustc_expected_cgu_reuse(
- module = "cgu_keeps_identical_fn-bar",
- cfg = "cfail3",
- kind = "post-lto"
-)]
-#![rustc_expected_cgu_reuse(
- module = "cgu_keeps_identical_fn-bar",
- cfg = "cfail5",
- kind = "post-lto"
-)]
-#![rustc_expected_cgu_reuse(
- module = "cgu_keeps_identical_fn-bar",
- cfg = "cfail6",
- kind = "post-lto"
-)]
-
-mod foo {
-
- // Trivial functions like this one are imported very reliably by ThinLTO.
- #[cfg(any(cfail1, cfail4))]
- pub fn inlined_fn() -> u32 {
- 1234
- }
-
- #[cfg(not(any(cfail1, cfail4)))]
- pub fn inlined_fn() -> u32 {
- 1234
- }
-}
-
-pub mod bar {
- use foo::inlined_fn;
-
- pub fn caller() -> u32 {
- inlined_fn()
- }
-}
diff --git a/src/test/incremental/thinlto/independent_cgus_dont_affect_each_other.rs b/src/test/incremental/thinlto/independent_cgus_dont_affect_each_other.rs
deleted file mode 100644
index 045f20119..000000000
--- a/src/test/incremental/thinlto/independent_cgus_dont_affect_each_other.rs
+++ /dev/null
@@ -1,58 +0,0 @@
-// This test checks that a change in a CGU does not invalidate an unrelated CGU
-// during incremental ThinLTO.
-
-// revisions: cfail1 cfail2 cfail3
-// compile-flags: -Z query-dep-graph -O
-// build-pass (FIXME(62277): could be check-pass?)
-
-#![feature(rustc_attrs)]
-#![crate_type="rlib"]
-
-#![rustc_expected_cgu_reuse(module="independent_cgus_dont_affect_each_other-foo",
- cfg="cfail2",
- kind="no")]
-#![rustc_expected_cgu_reuse(module="independent_cgus_dont_affect_each_other-foo",
- cfg="cfail3",
- kind="post-lto")]
-
-#![rustc_expected_cgu_reuse(module="independent_cgus_dont_affect_each_other-bar",
- cfg="cfail2",
- kind="pre-lto")]
-#![rustc_expected_cgu_reuse(module="independent_cgus_dont_affect_each_other-bar",
- cfg="cfail3",
- kind="post-lto")]
-
-#![rustc_expected_cgu_reuse(module="independent_cgus_dont_affect_each_other-baz",
- cfg="cfail2",
- kind="post-lto")]
-#![rustc_expected_cgu_reuse(module="independent_cgus_dont_affect_each_other-baz",
- cfg="cfail3",
- kind="post-lto")]
-mod foo {
-
- #[cfg(cfail1)]
- pub fn inlined_fn() -> u32 {
- 1234
- }
-
- #[cfg(not(cfail1))]
- pub fn inlined_fn() -> u32 {
- // See `cgu_keeps_identical_fn.rs` for why this is different
- // from the other version of this function.
- 12345
- }
-}
-
-pub mod bar {
- use foo::inlined_fn;
-
- pub fn caller() -> u32 {
- inlined_fn()
- }
-}
-
-pub mod baz {
- pub fn unrelated_to_other_fns() -> u64 {
- 0xbeef
- }
-}
diff --git a/src/test/incremental/type_alias_cross_crate/auxiliary/a.rs b/src/test/incremental/type_alias_cross_crate/auxiliary/a.rs
deleted file mode 100644
index 61fe297d7..000000000
--- a/src/test/incremental/type_alias_cross_crate/auxiliary/a.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-// compile-flags: -Z query-dep-graph
-
-#![crate_type="rlib"]
-
-#[cfg(rpass1)]
-pub type X = u32;
-
-#[cfg(rpass2)]
-pub type X = i32;
-
-// this version doesn't actually change anything:
-#[cfg(rpass3)]
-pub type X = i32;
-
-pub type Y = char;
diff --git a/src/test/incremental/type_alias_cross_crate/b.rs b/src/test/incremental/type_alias_cross_crate/b.rs
deleted file mode 100644
index f6c252684..000000000
--- a/src/test/incremental/type_alias_cross_crate/b.rs
+++ /dev/null
@@ -1,22 +0,0 @@
-// aux-build:a.rs
-// revisions:rpass1 rpass2 rpass3
-// compile-flags: -Z query-dep-graph
-
-#![feature(rustc_attrs)]
-
-extern crate a;
-
-#[rustc_clean(except="typeck", cfg="rpass2")]
-#[rustc_clean(cfg="rpass3")]
-pub fn use_X() -> u32 {
- let x: a::X = 22;
- x as u32
-}
-
-#[rustc_clean(cfg="rpass2")]
-#[rustc_clean(cfg="rpass3")]
-pub fn use_Y() {
- let x: a::Y = 'c';
-}
-
-pub fn main() { }
diff --git a/src/test/incremental/unchecked_dirty_clean.rs b/src/test/incremental/unchecked_dirty_clean.rs
deleted file mode 100644
index 3c8692a30..000000000
--- a/src/test/incremental/unchecked_dirty_clean.rs
+++ /dev/null
@@ -1,34 +0,0 @@
-// revisions: rpass1 cfail2
-// compile-flags: -Z query-dep-graph
-
-#![allow(warnings)]
-#![feature(rustc_attrs)]
-
-// Sanity check for the dirty-clean system. We add #[rustc_clean]
-// attributes in places that are not checked and make sure that this causes an
-// error.
-
-fn main() {
-
- #[rustc_clean(except="hir_owner", cfg="cfail2")]
- //[cfail2]~^ ERROR found unchecked `#[rustc_clean]` attribute
- {
- // empty block
- }
-
- #[rustc_clean(cfg="cfail2")]
- //[cfail2]~^ ERROR found unchecked `#[rustc_clean]` attribute
- {
- // empty block
- }
-}
-
-struct _Struct {
- #[rustc_clean(except="hir_owner", cfg="cfail2")]
- //[cfail2]~^ ERROR found unchecked `#[rustc_clean]` attribute
- _field1: i32,
-
- #[rustc_clean(cfg="cfail2")]
- //[cfail2]~^ ERROR found unchecked `#[rustc_clean]` attribute
- _field2: i32,
-}
diff --git a/src/test/incremental/warnings-reemitted.rs b/src/test/incremental/warnings-reemitted.rs
deleted file mode 100644
index 0e6b88232..000000000
--- a/src/test/incremental/warnings-reemitted.rs
+++ /dev/null
@@ -1,9 +0,0 @@
-// revisions: cfail1 cfail2 cfail3
-// compile-flags: -Coverflow-checks=on
-// build-pass
-
-#![warn(arithmetic_overflow)]
-
-fn main() {
- let _ = 255u8 + 1; //~ WARNING operation will overflow
-}