about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--compiler/rustc_codegen_ssa/src/back/link.rs14
-rw-r--r--compiler/rustc_const_eval/src/interpret/memory.rs13
-rw-r--r--compiler/rustc_interface/src/tests.rs2
-rw-r--r--compiler/rustc_session/src/config.rs2
-rw-r--r--compiler/rustc_session/src/options.rs16
-rw-r--r--compiler/rustc_target/src/spec/android_base.rs2
-rw-r--r--library/core/src/lib.rs2
-rw-r--r--library/core/src/num/int_macros.rs54
-rw-r--r--library/core/src/num/mod.rs15
-rw-r--r--library/core/tests/simd.rs2
-rw-r--r--library/std/src/fs.rs9
-rw-r--r--library/std/src/fs/tests.rs15
-rw-r--r--library/std/src/os/wasi/fs.rs8
-rw-r--r--library/std/src/process.rs9
-rw-r--r--src/doc/rustc/src/codegen-options/index.md16
-rw-r--r--src/doc/unstable-book/src/compiler-flags/strip.md17
-rw-r--r--src/test/ui/abi/c-stack-returning-int64.rs (renamed from src/test/ui/c-stack-returning-int64.rs)0
-rw-r--r--src/test/ui/abi/x86stdcall.rs (renamed from src/test/ui/x86stdcall.rs)0
-rw-r--r--src/test/ui/abi/x86stdcall2.rs (renamed from src/test/ui/x86stdcall2.rs)0
-rw-r--r--src/test/ui/alloc-error/default-alloc-error-hook.rs (renamed from src/test/ui/default-alloc-error-hook.rs)0
-rw-r--r--src/test/ui/alloca-from-derived-tydesc.rs15
-rw-r--r--src/test/ui/associated-types/associated-item-long-paths.rs (renamed from src/test/ui/associated-item-long-paths.rs)0
-rw-r--r--src/test/ui/associated-types/default-associated-types.rs (renamed from src/test/ui/default-associated-types.rs)0
-rw-r--r--src/test/ui/async-await/incorrect-move-async-order-issue-79694.fixed (renamed from src/test/ui/parser/incorrect-move-async-order-issue-79694.fixed)0
-rw-r--r--src/test/ui/async-await/incorrect-move-async-order-issue-79694.rs (renamed from src/test/ui/parser/incorrect-move-async-order-issue-79694.rs)0
-rw-r--r--src/test/ui/async-await/incorrect-move-async-order-issue-79694.stderr (renamed from src/test/ui/parser/incorrect-move-async-order-issue-79694.stderr)0
-rw-r--r--src/test/ui/attributes/attr-eq-token-tree.rs (renamed from src/test/ui/attr-eq-token-tree.rs)0
-rw-r--r--src/test/ui/attributes/attr-eq-token-tree.stderr (renamed from src/test/ui/attr-eq-token-tree.stderr)0
-rw-r--r--src/test/ui/attributes/tool_attributes.rs (renamed from src/test/ui/tool_attributes.rs)0
-rw-r--r--src/test/ui/augmented-assignments-feature-gate.rs15
-rw-r--r--src/test/ui/binop/shift-various-bad-types.rs (renamed from src/test/ui/shift-various-bad-types.rs)0
-rw-r--r--src/test/ui/binop/shift-various-bad-types.stderr (renamed from src/test/ui/shift-various-bad-types.stderr)0
-rw-r--r--src/test/ui/borrowck/access-mode-in-closures.rs (renamed from src/test/ui/access-mode-in-closures.rs)0
-rw-r--r--src/test/ui/borrowck/access-mode-in-closures.stderr (renamed from src/test/ui/access-mode-in-closures.stderr)0
-rw-r--r--src/test/ui/borrowck/lazy-init.rs (renamed from src/test/ui/lazy-init.rs)0
-rw-r--r--src/test/ui/box/new-box-syntax.rs (renamed from src/test/ui/new-box-syntax.rs)0
-rw-r--r--src/test/ui/cast/codegen-object-shim.rs (renamed from src/test/ui/codegen-object-shim.rs)0
-rw-r--r--src/test/ui/cfg/crt-static-off-works.rs (renamed from src/test/ui/crt-static-off-works.rs)0
-rw-r--r--src/test/ui/cfg/expanded-cfg.rs (renamed from src/test/ui/expanded-cfg.rs)0
-rw-r--r--src/test/ui/closures/closure-expected.rs (renamed from src/test/ui/closure-expected.rs)0
-rw-r--r--src/test/ui/closures/closure-expected.stderr (renamed from src/test/ui/closure-expected.stderr)0
-rw-r--r--src/test/ui/closures/closure_promotion.rs (renamed from src/test/ui/closure_promotion.rs)0
-rw-r--r--src/test/ui/closures/semistatement-in-lambda.rs (renamed from src/test/ui/semistatement-in-lambda.rs)0
-rw-r--r--src/test/ui/closures/thir-unsafeck-issue-85871.rs (renamed from src/test/ui/thir-unsafeck-issue-85871.rs)0
-rw-r--r--src/test/ui/coercion/unsafe-coercion.rs (renamed from src/test/ui/unsafe-coercion.rs)0
-rw-r--r--src/test/ui/consts/eval-enum.rs (renamed from src/test/ui/eval-enum.rs)0
-rw-r--r--src/test/ui/consts/eval-enum.stderr (renamed from src/test/ui/eval-enum.stderr)0
-rw-r--r--src/test/ui/consts/issue-miri-1910.rs12
-rw-r--r--src/test/ui/consts/issue-miri-1910.stderr26
-rw-r--r--src/test/ui/drop/auxiliary/inline_dtor.rs (renamed from src/test/ui/auxiliary/inline_dtor.rs)0
-rw-r--r--src/test/ui/drop/use_inline_dtor.rs (renamed from src/test/ui/use_inline_dtor.rs)0
-rw-r--r--src/test/ui/editions/edition-keywords-2015-2015.rs (renamed from src/test/ui/edition-keywords-2015-2015.rs)0
-rw-r--r--src/test/ui/editions/edition-keywords-2018-2015.rs (renamed from src/test/ui/edition-keywords-2018-2015.rs)0
-rw-r--r--src/test/ui/estr-uniq.rs15
-rw-r--r--src/test/ui/export-import.rs11
-rw-r--r--src/test/ui/export-import.stderr15
-rw-r--r--src/test/ui/export-non-interference2.rs11
-rw-r--r--src/test/ui/export-non-interference3.rs11
-rw-r--r--src/test/ui/export2.rs11
-rw-r--r--src/test/ui/export2.stderr9
-rw-r--r--src/test/ui/expr-block-unique.rs4
-rw-r--r--src/test/ui/expr/if/expr-if.rs (renamed from src/test/ui/expr-if.rs)0
-rw-r--r--src/test/ui/extern/auxiliary/reexport-should-still-link.rs (renamed from src/test/ui/auxiliary/reexport-should-still-link.rs)0
-rw-r--r--src/test/ui/feature-gates/gated-bad-feature.rs (renamed from src/test/ui/gated-bad-feature.rs)0
-rw-r--r--src/test/ui/feature-gates/gated-bad-feature.stderr (renamed from src/test/ui/gated-bad-feature.stderr)0
-rw-r--r--src/test/ui/feature-gates/stable-features.rs (renamed from src/test/ui/stable-features.rs)0
-rw-r--r--src/test/ui/feature-gates/stable-features.stderr (renamed from src/test/ui/stable-features.stderr)0
-rw-r--r--src/test/ui/fn/expr-fn.rs (renamed from src/test/ui/expr-fn.rs)0
-rw-r--r--src/test/ui/fn/nested-function-names-issue-8587.rs (renamed from src/test/ui/nested-function-names-issue-8587.rs)0
-rw-r--r--src/test/ui/for-loop-while/while-let-2.rs (renamed from src/test/ui/while-let.rs)0
-rw-r--r--src/test/ui/for-loop-while/while-let-2.stderr (renamed from src/test/ui/while-let.stderr)6
-rw-r--r--src/test/ui/generics/autobind.rs (renamed from src/test/ui/autobind.rs)0
-rw-r--r--src/test/ui/generics/lifetime-before-type-params.rs (renamed from src/test/ui/lifetime-before-type-params.rs)0
-rw-r--r--src/test/ui/generics/lifetime-before-type-params.stderr (renamed from src/test/ui/lifetime-before-type-params.stderr)0
-rw-r--r--src/test/ui/generics/type-params-in-for-each.rs (renamed from src/test/ui/type-params-in-for-each.rs)0
-rw-r--r--src/test/ui/imports/export-multi.rs (renamed from src/test/ui/export-multi.rs)0
-rw-r--r--src/test/ui/imports/glob-cycles.rs (renamed from src/test/ui/glob-cycles.rs)0
-rw-r--r--src/test/ui/imports/no-std-inject.rs (renamed from src/test/ui/no-std-inject.rs)0
-rw-r--r--src/test/ui/imports/no-std-inject.stderr (renamed from src/test/ui/no-std-inject.stderr)0
-rw-r--r--src/test/ui/imports/use-mod.rs (renamed from src/test/ui/use-mod.rs)0
-rw-r--r--src/test/ui/inference/question-mark-type-infer.rs (renamed from src/test/ui/question-mark-type-infer.rs)0
-rw-r--r--src/test/ui/inference/question-mark-type-infer.stderr (renamed from src/test/ui/question-mark-type-infer.stderr)0
-rw-r--r--src/test/ui/inference/simple-infer.rs (renamed from src/test/ui/simple-infer.rs)0
-rw-r--r--src/test/ui/keyword-changes-2012-07-31.rs20
-rw-r--r--src/test/ui/lang-items/no_owned_box_lang_item.rs (renamed from src/test/ui/no_owned_box_lang_item.rs)0
-rw-r--r--src/test/ui/lang-items/no_owned_box_lang_item.stderr (renamed from src/test/ui/no_owned_box_lang_item.stderr)0
-rw-r--r--src/test/ui/linkage-attr/auxiliary/linkage1.rs (renamed from src/test/ui/auxiliary/linkage1.rs)0
-rw-r--r--src/test/ui/linkage-attr/linkage1.rs (renamed from src/test/ui/linkage1.rs)0
-rw-r--r--src/test/ui/lint/test-allow-dead-extern-static-no-warning.rs (renamed from src/test/ui/test-allow-dead-extern-static-no-warning.rs)0
-rw-r--r--src/test/ui/lint/warn-path-statement.rs (renamed from src/test/ui/warn-path-statement.rs)0
-rw-r--r--src/test/ui/lint/warn-path-statement.stderr (renamed from src/test/ui/warn-path-statement.stderr)0
-rw-r--r--src/test/ui/lto/auxiliary/debuginfo-lto-aux.rs (renamed from src/test/ui/auxiliary/debuginfo-lto-aux.rs)0
-rw-r--r--src/test/ui/lto/debuginfo-lto.rs (renamed from src/test/ui/debuginfo-lto.rs)0
-rw-r--r--src/test/ui/lto/fat-lto.rs (renamed from src/test/ui/fat-lto.rs)0
-rw-r--r--src/test/ui/macros/auxiliary/proc_macro_def.rs (renamed from src/test/ui/auxiliary/proc_macro_def.rs)0
-rw-r--r--src/test/ui/macros/concat.rs (renamed from src/test/ui/concat.rs)0
-rw-r--r--src/test/ui/macros/concat.stderr (renamed from src/test/ui/concat.stderr)0
-rw-r--r--src/test/ui/macros/include-single-expr-helper-1.rs (renamed from src/test/ui/include-single-expr-helper-1.rs)0
-rw-r--r--src/test/ui/macros/include-single-expr-helper.rs (renamed from src/test/ui/include-single-expr-helper.rs)0
-rw-r--r--src/test/ui/macros/include-single-expr.rs (renamed from src/test/ui/include-single-expr.rs)0
-rw-r--r--src/test/ui/macros/include-single-expr.stderr (renamed from src/test/ui/include-single-expr.stderr)0
-rw-r--r--src/test/ui/macros/malformed_macro_lhs.rs (renamed from src/test/ui/malformed_macro_lhs.rs)0
-rw-r--r--src/test/ui/macros/malformed_macro_lhs.stderr (renamed from src/test/ui/malformed_macro_lhs.stderr)0
-rw-r--r--src/test/ui/macros/no-std-macros.rs (renamed from src/test/ui/no-std-macros.rs)0
-rw-r--r--src/test/ui/macros/proc_macro.rs (renamed from src/test/ui/proc_macro.rs)0
-rw-r--r--src/test/ui/nll/lub-match.nll.stderr (renamed from src/test/ui/lub-match.nll.stderr)0
-rw-r--r--src/test/ui/nll/lub-match.rs (renamed from src/test/ui/lub-match.rs)0
-rw-r--r--src/test/ui/nll/lub-match.stderr (renamed from src/test/ui/lub-match.stderr)0
-rw-r--r--src/test/ui/nll/ref-suggestion.rs (renamed from src/test/ui/ref-suggestion.rs)0
-rw-r--r--src/test/ui/nll/ref-suggestion.stderr (renamed from src/test/ui/ref-suggestion.stderr)0
-rw-r--r--src/test/ui/numeric/integer-literal-suffix-inference.rs (renamed from src/test/ui/integer-literal-suffix-inference.rs)0
-rw-r--r--src/test/ui/numeric/integer-literal-suffix-inference.stderr (renamed from src/test/ui/integer-literal-suffix-inference.stderr)0
-rw-r--r--src/test/ui/object-lifetime/object-lifetime-default-default-to-static.rs (renamed from src/test/ui/object-lifetime-default-default-to-static.rs)0
-rw-r--r--src/test/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs (renamed from src/test/ui/structs-enums/object-lifetime-default-from-ref-struct.rs)0
-rw-r--r--src/test/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs (renamed from src/test/ui/object-lifetime-default-from-rptr-box.rs)0
-rw-r--r--src/test/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs (renamed from src/test/ui/object-lifetime-default-from-rptr-mut.rs)0
-rw-r--r--src/test/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs (renamed from src/test/ui/structs-enums/object-lifetime-default-from-rptr-struct.rs)0
-rw-r--r--src/test/ui/object-lifetime/object-lifetime-default-from-rptr.rs (renamed from src/test/ui/object-lifetime-default-from-rptr.rs)0
-rw-r--r--src/test/ui/object-lifetime/object-lifetime-default-inferred.rs (renamed from src/test/ui/object-lifetime-default-inferred.rs)0
-rw-r--r--src/test/ui/overloaded/fixup-deref-mut.rs (renamed from src/test/ui/fixup-deref-mut.rs)0
-rw-r--r--src/test/ui/paren-free.rs7
-rw-r--r--src/test/ui/parser/issue-83639.rs (renamed from src/test/ui/issue-83639.rs)0
-rw-r--r--src/test/ui/parser/issue-83639.stderr (renamed from src/test/ui/issue-83639.stderr)0
-rw-r--r--src/test/ui/parser/obsolete-syntax-impl-for-dotdot.rs (renamed from src/test/ui/obsolete-syntax-impl-for-dotdot.rs)0
-rw-r--r--src/test/ui/parser/obsolete-syntax-impl-for-dotdot.stderr (renamed from src/test/ui/obsolete-syntax-impl-for-dotdot.stderr)0
-rw-r--r--src/test/ui/parser/ranges-precedence.rs (renamed from src/test/ui/ranges-precedence.rs)0
-rw-r--r--src/test/ui/parser/similar-tokens.rs (renamed from src/test/ui/similar-tokens.rs)0
-rw-r--r--src/test/ui/parser/similar-tokens.stderr (renamed from src/test/ui/similar-tokens.stderr)0
-rw-r--r--src/test/ui/parser/utf8_idents-rpass.rs (renamed from src/test/ui/utf8_idents-rpass.rs)0
-rw-r--r--src/test/ui/privacy/useless-pub.rs (renamed from src/test/ui/useless-pub.rs)0
-rw-r--r--src/test/ui/privacy/useless-pub.stderr (renamed from src/test/ui/useless-pub.stderr)0
-rw-r--r--src/test/ui/proc-macro/auxiliary/cond_plugin.rs (renamed from src/test/ui/auxiliary/cond_plugin.rs)0
-rw-r--r--src/test/ui/proc-macro/macro-quote-cond.rs (renamed from src/test/ui/macro-quote-cond.rs)0
-rw-r--r--src/test/ui/process/fds-are-cloexec.rs (renamed from src/test/ui/fds-are-cloexec.rs)0
-rw-r--r--src/test/ui/process/sigpipe-should-be-ignored.rs (renamed from src/test/ui/sigpipe-should-be-ignored.rs)0
-rw-r--r--src/test/ui/purity-infer.rs6
-rw-r--r--src/test/ui/readalias.rs12
-rw-r--r--src/test/ui/recursion/instantiable.rs (renamed from src/test/ui/instantiable.rs)0
-rw-r--r--src/test/ui/reexport-should-still-link.rs10
-rw-r--r--src/test/ui/regions/init-res-into-things.rs (renamed from src/test/ui/init-res-into-things.rs)0
-rw-r--r--src/test/ui/regions/owned-implies-static.rs (renamed from src/test/ui/owned-implies-static.rs)0
-rw-r--r--src/test/ui/regions/rcvr-borrowed-to-region.rs (renamed from src/test/ui/rcvr-borrowed-to-region.rs)0
-rw-r--r--src/test/ui/repr/attr-usage-repr.rs (renamed from src/test/ui/attr-usage-repr.rs)0
-rw-r--r--src/test/ui/repr/attr-usage-repr.stderr (renamed from src/test/ui/attr-usage-repr.stderr)0
-rw-r--r--src/test/ui/repr/repr.rs (renamed from src/test/ui/repr.rs)0
-rw-r--r--src/test/ui/repr/repr.stderr (renamed from src/test/ui/repr.stderr)0
-rw-r--r--src/test/ui/resolve/crate-in-paths.rs (renamed from src/test/ui/crate-in-paths.rs)0
-rw-r--r--src/test/ui/resolve/crate-in-paths.stderr (renamed from src/test/ui/crate-in-paths.stderr)0
-rw-r--r--src/test/ui/resolve/editions-crate-root-2018.rs (renamed from src/test/ui/editions-crate-root-2018.rs)0
-rw-r--r--src/test/ui/resolve/editions-crate-root-2018.stderr (renamed from src/test/ui/editions-crate-root-2018.stderr)0
-rw-r--r--src/test/ui/resolve/enums-pats-not-idents.rs (renamed from src/test/ui/enums-pats-not-idents.rs)0
-rw-r--r--src/test/ui/resolve/enums-pats-not-idents.stderr (renamed from src/test/ui/enums-pats-not-idents.stderr)0
-rw-r--r--src/test/ui/resolve/no-implicit-prelude-nested.rs (renamed from src/test/ui/no-implicit-prelude-nested.rs)0
-rw-r--r--src/test/ui/resolve/no-implicit-prelude-nested.stderr (renamed from src/test/ui/no-implicit-prelude-nested.stderr)0
-rw-r--r--src/test/ui/resolve/resolve-issue-2428.rs (renamed from src/test/ui/resolve-issue-2428.rs)0
-rw-r--r--src/test/ui/ret-none.rs13
-rw-r--r--src/test/ui/runtime/out-of-stack.rs (renamed from src/test/ui/out-of-stack.rs)0
-rw-r--r--src/test/ui/runtime/rt-explody-panic-payloads.rs (renamed from src/test/ui/rt-explody-panic-payloads.rs)0
-rw-r--r--src/test/ui/runtime/running-with-no-runtime.rs (renamed from src/test/ui/running-with-no-runtime.rs)0
-rw-r--r--src/test/ui/runtime/signal-alternate-stack-cleanup.rs (renamed from src/test/ui/signal-alternate-stack-cleanup.rs)0
-rw-r--r--src/test/ui/runtime/stdout-during-shutdown.rs (renamed from src/test/ui/stdout-during-shutdown.rs)0
-rw-r--r--src/test/ui/runtime/stdout-during-shutdown.run.stdout (renamed from src/test/ui/stdout-during-shutdown.run.stdout)0
-rw-r--r--src/test/ui/rustdoc/duplicate_doc_alias.rs (renamed from src/test/ui/duplicate_doc_alias.rs)0
-rw-r--r--src/test/ui/rustdoc/duplicate_doc_alias.stderr (renamed from src/test/ui/duplicate_doc_alias.stderr)0
-rw-r--r--src/test/ui/rustdoc/hidden-doc-associated-item.rs (renamed from src/test/ui/hidden-doc-associated-item.rs)0
-rw-r--r--src/test/ui/self/class-missing-self.rs (renamed from src/test/ui/class-missing-self.rs)0
-rw-r--r--src/test/ui/self/class-missing-self.stderr (renamed from src/test/ui/class-missing-self.stderr)0
-rw-r--r--src/test/ui/self/objects-owned-object-owned-method.rs (renamed from src/test/ui/objects-owned-object-owned-method.rs)0
-rw-r--r--src/test/ui/static/refer-to-other-statics-by-value.rs (renamed from src/test/ui/refer-to-other-statics-by-value.rs)0
-rw-r--r--src/test/ui/static/static_sized_requirement.rs (renamed from src/test/ui/static_sized_requirement.rs)0
-rw-r--r--src/test/ui/stdlib-unit-tests/builtin-clone.rs (renamed from src/test/ui/builtin-clone.rs)0
-rw-r--r--src/test/ui/stdlib-unit-tests/eq-multidispatch.rs (renamed from src/test/ui/eq-multidispatch.rs)0
-rw-r--r--src/test/ui/stdlib-unit-tests/istr.rs (renamed from src/test/ui/istr.rs)0
-rw-r--r--src/test/ui/stdlib-unit-tests/log-knows-the-names-of-variants-in-std.rs (renamed from src/test/ui/log-knows-the-names-of-variants-in-std.rs)0
-rw-r--r--src/test/ui/stdlib-unit-tests/seq-compare.rs (renamed from src/test/ui/seq-compare.rs)0
-rw-r--r--src/test/ui/structs/large-records.rs (renamed from src/test/ui/large-records.rs)0
-rw-r--r--src/test/ui/suggestions/bound-suggestions.fixed (renamed from src/test/ui/bound-suggestions.fixed)0
-rw-r--r--src/test/ui/suggestions/bound-suggestions.rs (renamed from src/test/ui/bound-suggestions.rs)0
-rw-r--r--src/test/ui/suggestions/bound-suggestions.stderr (renamed from src/test/ui/bound-suggestions.stderr)0
-rw-r--r--src/test/ui/threads-sendsync/child-outlives-parent.rs (renamed from src/test/ui/child-outlives-parent.rs)0
-rw-r--r--src/test/ui/threads-sendsync/mpsc_stress.rs (renamed from src/test/ui/mpsc_stress.rs)0
-rw-r--r--src/test/ui/threads-sendsync/unwind-resource.rs (renamed from src/test/ui/unwind-resource.rs)0
-rw-r--r--src/test/ui/threads-sendsync/yield.rs (renamed from src/test/ui/yield.rs)0
-rw-r--r--src/test/ui/threads-sendsync/yield1.rs (renamed from src/test/ui/yield1.rs)0
-rw-r--r--src/test/ui/traits/bug-7295.rs (renamed from src/test/ui/bug-7295.rs)0
-rw-r--r--src/test/ui/traits/monad.rs (renamed from src/test/ui/monad.rs)0
-rw-r--r--src/test/ui/traits/monomorphized-callees-with-ty-params-3314.rs (renamed from src/test/ui/monomorphized-callees-with-ty-params-3314.rs)0
-rw-r--r--src/test/ui/traits/multidispatch-conditional-impl-not-considered.rs (renamed from src/test/ui/multidispatch-conditional-impl-not-considered.rs)0
-rw-r--r--src/test/ui/traits/multidispatch1.rs (renamed from src/test/ui/multidispatch1.rs)0
-rw-r--r--src/test/ui/traits/multidispatch2.rs (renamed from src/test/ui/multidispatch2.rs)0
-rw-r--r--src/test/ui/traits/objects-owned-object-borrowed-method-headerless.rs (renamed from src/test/ui/objects-owned-object-borrowed-method-headerless.rs)0
-rw-r--r--src/test/ui/traits/staticness-mismatch.rs (renamed from src/test/ui/staticness-mismatch.rs)0
-rw-r--r--src/test/ui/traits/staticness-mismatch.stderr (renamed from src/test/ui/staticness-mismatch.stderr)0
-rw-r--r--src/test/ui/traits/typeclasses-eq-example-static.rs (renamed from src/test/ui/typeclasses-eq-example-static.rs)0
-rw-r--r--src/test/ui/traits/typeclasses-eq-example.rs (renamed from src/test/ui/typeclasses-eq-example.rs)0
-rw-r--r--src/test/ui/traits/vtable-res-trait-param.rs (renamed from src/test/ui/vtable-res-trait-param.rs)0
-rw-r--r--src/test/ui/traits/vtable-res-trait-param.stderr (renamed from src/test/ui/vtable-res-trait-param.stderr)0
-rw-r--r--src/test/ui/tuple/tuple-index-fat-types.rs (renamed from src/test/ui/tuple-index-fat-types.rs)0
-rw-r--r--src/test/ui/type-in-nested-module.rs17
-rw-r--r--src/test/ui/typeck/prim-with-args.rs (renamed from src/test/ui/prim-with-args.rs)0
-rw-r--r--src/test/ui/typeck/prim-with-args.stderr (renamed from src/test/ui/prim-with-args.stderr)0
-rw-r--r--src/test/ui/unsized/maybe-bounds-where-cpass.rs (renamed from src/test/ui/maybe-bounds-where-cpass.rs)2
-rw-r--r--src/test/ui/use-crate-name-alias.rs7
-rw-r--r--src/test/ui/writealias.rs19
-rw-r--r--src/tools/tidy/src/ui_tests.rs6
205 files changed, 121 insertions, 355 deletions
diff --git a/compiler/rustc_codegen_ssa/src/back/link.rs b/compiler/rustc_codegen_ssa/src/back/link.rs
index 1ba0c4fa05b..638b2a7b5a9 100644
--- a/compiler/rustc_codegen_ssa/src/back/link.rs
+++ b/compiler/rustc_codegen_ssa/src/back/link.rs
@@ -1034,8 +1034,10 @@ fn link_natively<'a, B: ArchiveBuilder<'a>>(
         SplitDebuginfo::Packed => link_dwarf_object(sess, &out_filename),
     }
 
+    let strip = strip_value(sess);
+
     if sess.target.is_like_osx {
-        match sess.opts.debugging_opts.strip {
+        match strip {
             Strip::Debuginfo => strip_symbols_in_osx(sess, &out_filename, Some("-S")),
             Strip::Symbols => strip_symbols_in_osx(sess, &out_filename, None),
             Strip::None => {}
@@ -1043,6 +1045,14 @@ fn link_natively<'a, B: ArchiveBuilder<'a>>(
     }
 }
 
+// Temporarily support both -Z strip and -C strip
+fn strip_value(sess: &Session) -> Strip {
+    match (sess.opts.debugging_opts.strip, sess.opts.cg.strip) {
+        (s, Strip::None) => s,
+        (_, s) => s,
+    }
+}
+
 fn strip_symbols_in_osx<'a>(sess: &'a Session, out_filename: &Path, option: Option<&str>) {
     let mut cmd = Command::new("strip");
     if let Some(option) = option {
@@ -2014,7 +2024,7 @@ fn add_order_independent_options(
     cmd.optimize();
 
     // Pass debuginfo and strip flags down to the linker.
-    cmd.debuginfo(sess.opts.debugging_opts.strip);
+    cmd.debuginfo(strip_value(sess));
 
     // We want to prevent the compiler from accidentally leaking in any system libraries,
     // so by default we tell linkers not to link to any default libraries.
diff --git a/compiler/rustc_const_eval/src/interpret/memory.rs b/compiler/rustc_const_eval/src/interpret/memory.rs
index b8b6ff93753..4aa3c83cc02 100644
--- a/compiler/rustc_const_eval/src/interpret/memory.rs
+++ b/compiler/rustc_const_eval/src/interpret/memory.rs
@@ -1057,20 +1057,19 @@ impl<'mir, 'tcx, M: Machine<'mir, 'tcx>> Memory<'mir, 'tcx, M> {
             Some(dest_ptr) => dest_ptr,
         };
 
+        // This checks relocation edges on the src, which needs to happen before
+        // `prepare_relocation_copy`.
+        let src_bytes = src_alloc
+            .get_bytes_with_uninit_and_ptr(&tcx, src_range)
+            .map_err(|e| e.to_interp_error(src_alloc_id))?
+            .as_ptr(); // raw ptr, so we can also get a ptr to the destination allocation
         // first copy the relocations to a temporary buffer, because
         // `get_bytes_mut` will clear the relocations, which is correct,
         // since we don't want to keep any relocations at the target.
-        // (`get_bytes_with_uninit_and_ptr` below checks that there are no
-        // relocations overlapping the edges; those would not be handled correctly).
         let relocations =
             src_alloc.prepare_relocation_copy(self, src_range, dest_offset, num_copies);
         // Prepare a copy of the initialization mask.
         let compressed = src_alloc.compress_uninit_range(src_range);
-        // This checks relocation edges on the src.
-        let src_bytes = src_alloc
-            .get_bytes_with_uninit_and_ptr(&tcx, src_range)
-            .map_err(|e| e.to_interp_error(src_alloc_id))?
-            .as_ptr(); // raw ptr, so we can also get a ptr to the destination allocation
 
         // Destination alloc preparations and access hooks.
         let (dest_alloc, extra) = self.get_raw_mut(dest_alloc_id)?;
diff --git a/compiler/rustc_interface/src/tests.rs b/compiler/rustc_interface/src/tests.rs
index eed2e07e890..6b666d7c292 100644
--- a/compiler/rustc_interface/src/tests.rs
+++ b/compiler/rustc_interface/src/tests.rs
@@ -551,6 +551,7 @@ fn test_codegen_options_tracking_hash() {
     untracked!(remark, Passes::Some(vec![String::from("pass1"), String::from("pass2")]));
     untracked!(rpath, true);
     untracked!(save_temps, true);
+    untracked!(strip, Strip::Debuginfo);
 
     macro_rules! tracked {
         ($name: ident, $non_default_value: expr) => {
@@ -684,7 +685,6 @@ fn test_debugging_options_tracking_hash() {
     untracked!(self_profile_events, Some(vec![String::new()]));
     untracked!(span_debug, true);
     untracked!(span_free_formats, true);
-    untracked!(strip, Strip::Debuginfo);
     untracked!(temps_dir, Some(String::from("abc")));
     untracked!(terminal_width, Some(80));
     untracked!(threads, 99);
diff --git a/compiler/rustc_session/src/config.rs b/compiler/rustc_session/src/config.rs
index 3afe0947339..5e6bbe03918 100644
--- a/compiler/rustc_session/src/config.rs
+++ b/compiler/rustc_session/src/config.rs
@@ -37,7 +37,7 @@ use std::iter::{self, FromIterator};
 use std::path::{Path, PathBuf};
 use std::str::{self, FromStr};
 
-/// The different settings that the `-Z strip` flag can have.
+/// The different settings that the `-C strip` flag can have.
 #[derive(Clone, Copy, PartialEq, Hash, Debug)]
 pub enum Strip {
     /// Do not strip at all.
diff --git a/compiler/rustc_session/src/options.rs b/compiler/rustc_session/src/options.rs
index d1d8606a75a..3f279a045f1 100644
--- a/compiler/rustc_session/src/options.rs
+++ b/compiler/rustc_session/src/options.rs
@@ -219,7 +219,7 @@ top_level_options!(
 /// generated code to parse an option into its respective field in the struct. There are a few
 /// hand-written parsers for parsing specific types of values in this module.
 macro_rules! options {
-    ($struct_name:ident, $stat:ident, $prefix:expr, $outputname:expr,
+    ($struct_name:ident, $stat:ident, $optmod:ident, $prefix:expr, $outputname:expr,
      $($( #[$attr:meta] )* $opt:ident : $t:ty = (
         $init:expr,
         $parse:ident,
@@ -264,13 +264,15 @@ macro_rules! options {
     }
 
     pub const $stat: OptionDescrs<$struct_name> =
-        &[ $( (stringify!($opt), $opt, desc::$parse, $desc) ),* ];
+        &[ $( (stringify!($opt), $optmod::$opt, desc::$parse, $desc) ),* ];
 
+    mod $optmod {
     $(
-        fn $opt(cg: &mut $struct_name, v: Option<&str>) -> bool {
-            parse::$parse(&mut redirect_field!(cg.$opt), v)
+        pub(super) fn $opt(cg: &mut super::$struct_name, v: Option<&str>) -> bool {
+            super::parse::$parse(&mut redirect_field!(cg.$opt), v)
         }
     )*
+    }
 
 ) }
 
@@ -918,7 +920,7 @@ mod parse {
 }
 
 options! {
-    CodegenOptions, CG_OPTIONS, "C", "codegen",
+    CodegenOptions, CG_OPTIONS, cgopts, "C", "codegen",
 
     // This list is in alphabetical order.
     //
@@ -1013,6 +1015,8 @@ options! {
         "use soft float ABI (*eabihf targets only) (default: no)"),
     split_debuginfo: Option<SplitDebuginfo> = (None, parse_split_debuginfo, [TRACKED],
         "how to handle split-debuginfo, a platform-specific option"),
+    strip: Strip = (Strip::None, parse_strip, [UNTRACKED],
+        "tell the linker which information to strip (`none` (default), `debuginfo` or `symbols`)"),
     target_cpu: Option<String> = (None, parse_opt_string, [TRACKED],
         "select target processor (`rustc --print target-cpus` for details)"),
     target_feature: String = (String::new(), parse_target_feature, [TRACKED],
@@ -1027,7 +1031,7 @@ options! {
 }
 
 options! {
-    DebuggingOptions, DB_OPTIONS, "Z", "debugging",
+    DebuggingOptions, DB_OPTIONS, dbopts, "Z", "debugging",
 
     // This list is in alphabetical order.
     //
diff --git a/compiler/rustc_target/src/spec/android_base.rs b/compiler/rustc_target/src/spec/android_base.rs
index aaf81648c51..0f01a78c8c5 100644
--- a/compiler/rustc_target/src/spec/android_base.rs
+++ b/compiler/rustc_target/src/spec/android_base.rs
@@ -1,7 +1,7 @@
 use crate::spec::{LinkerFlavor, TargetOptions};
 
 pub fn opts() -> TargetOptions {
-    let mut base = super::linux_gnu_base::opts();
+    let mut base = super::linux_base::opts();
     base.os = "android".to_string();
     // Many of the symbols defined in compiler-rt are also defined in libgcc.
     // Android's linker doesn't like that by default.
diff --git a/library/core/src/lib.rs b/library/core/src/lib.rs
index 584b90d613f..e4a566f5895 100644
--- a/library/core/src/lib.rs
+++ b/library/core/src/lib.rs
@@ -402,11 +402,13 @@ pub mod arch {
 #[allow(missing_debug_implementations, dead_code, unsafe_op_in_unsafe_fn, unused_unsafe)]
 #[allow(rustdoc::bare_urls)]
 #[unstable(feature = "portable_simd", issue = "86656")]
+#[cfg(not(all(miri, doctest)))] // Miri does not support all SIMD intrinsics
 #[cfg(not(bootstrap))]
 mod core_simd;
 
 #[doc = include_str!("../../portable-simd/crates/core_simd/src/core_simd_docs.md")]
 #[unstable(feature = "portable_simd", issue = "86656")]
+#[cfg(not(all(miri, doctest)))] // Miri does not support all SIMD intrinsics
 #[cfg(not(bootstrap))]
 pub mod simd {
     #[unstable(feature = "portable_simd", issue = "86656")]
diff --git a/library/core/src/num/int_macros.rs b/library/core/src/num/int_macros.rs
index 052e1a21b32..9a668d34b62 100644
--- a/library/core/src/num/int_macros.rs
+++ b/library/core/src/num/int_macros.rs
@@ -1511,33 +1511,6 @@ macro_rules! int_impl {
             (a as Self, b)
         }
 
-        /// Calculates `self + rhs + carry` without the ability to overflow.
-        ///
-        /// Performs "ternary addition" which takes in an extra bit to add, and may return an
-        /// additional bit of overflow. This allows for chaining together multiple additions
-        /// to create "big integers" which represent larger values.
-        ///
-        /// # Examples
-        ///
-        /// Basic usage
-        ///
-        /// ```
-        /// #![feature(bigint_helper_methods)]
-        #[doc = concat!("assert_eq!(5", stringify!($SelfT), ".carrying_add(2, false), (7, false));")]
-        #[doc = concat!("assert_eq!(5", stringify!($SelfT), ".carrying_add(2, true), (8, false));")]
-        #[doc = concat!("assert_eq!(", stringify!($SelfT), "::MAX.carrying_add(1, false), (", stringify!($SelfT), "::MIN, false));")]
-        #[doc = concat!("assert_eq!(", stringify!($SelfT), "::MAX.carrying_add(1, true), (", stringify!($SelfT), "::MIN + 1, false));")]
-        /// ```
-        #[unstable(feature = "bigint_helper_methods", issue = "85532")]
-        #[rustc_const_unstable(feature = "const_bigint_helper_methods", issue = "85532")]
-        #[must_use = "this returns the result of the operation, \
-                      without modifying the original"]
-        #[inline]
-        pub const fn carrying_add(self, rhs: Self, carry: bool) -> (Self, bool) {
-            let (sum, carry) = (self as $UnsignedT).carrying_add(rhs as $UnsignedT, carry);
-            (sum as $SelfT, carry)
-        }
-
         /// Calculates `self` + `rhs` with an unsigned `rhs`
         ///
         /// Returns a tuple of the addition along with a boolean indicating
@@ -1589,33 +1562,6 @@ macro_rules! int_impl {
             (a as Self, b)
         }
 
-        /// Calculates `self - rhs - borrow` without the ability to overflow.
-        ///
-        /// Performs "ternary subtraction" which takes in an extra bit to subtract, and may return
-        /// an additional bit of overflow. This allows for chaining together multiple subtractions
-        /// to create "big integers" which represent larger values.
-        ///
-        /// # Examples
-        ///
-        /// Basic usage
-        ///
-        /// ```
-        /// #![feature(bigint_helper_methods)]
-        #[doc = concat!("assert_eq!(5", stringify!($SelfT), ".borrowing_sub(2, false), (3, false));")]
-        #[doc = concat!("assert_eq!(5", stringify!($SelfT), ".borrowing_sub(2, true), (2, false));")]
-        #[doc = concat!("assert_eq!(", stringify!($SelfT), "::MIN.borrowing_sub(1, false), (", stringify!($SelfT), "::MAX, false));")]
-        #[doc = concat!("assert_eq!(", stringify!($SelfT), "::MIN.borrowing_sub(1, true), (", stringify!($SelfT), "::MAX - 1, false));")]
-        /// ```
-        #[unstable(feature = "bigint_helper_methods", issue = "85532")]
-        #[rustc_const_unstable(feature = "const_bigint_helper_methods", issue = "85532")]
-        #[must_use = "this returns the result of the operation, \
-                      without modifying the original"]
-        #[inline]
-        pub const fn borrowing_sub(self, rhs: Self, borrow: bool) -> (Self, bool) {
-            let (sum, borrow) = (self as $UnsignedT).borrowing_sub(rhs as $UnsignedT, borrow);
-            (sum as $SelfT, borrow)
-        }
-
         /// Calculates `self` - `rhs` with an unsigned `rhs`
         ///
         /// Returns a tuple of the subtraction along with a boolean indicating
diff --git a/library/core/src/num/mod.rs b/library/core/src/num/mod.rs
index 0c00db5fdf3..a8f2ded4659 100644
--- a/library/core/src/num/mod.rs
+++ b/library/core/src/num/mod.rs
@@ -95,12 +95,6 @@ depending on the target pointer size.
 
 macro_rules! widening_impl {
     ($SelfT:ty, $WideT:ty, $BITS:literal, unsigned) => {
-        widening_impl!($SelfT, $WideT, $BITS, "");
-    };
-    ($SelfT:ty, $WideT:ty, $BITS:literal, signed) => {
-        widening_impl!($SelfT, $WideT, $BITS, "# //");
-    };
-    ($SelfT:ty, $WideT:ty, $BITS:literal, $AdaptiveTestPrefix:literal) => {
         /// Calculates the complete product `self * rhs` without the possibility to overflow.
         ///
         /// This returns the low-order (wrapping) bits and the high-order (overflow) bits
@@ -154,7 +148,7 @@ macro_rules! widening_impl {
         /// assert_eq!(5u32.carrying_mul(2, 10), (20, 0));
         /// assert_eq!(1_000_000_000u32.carrying_mul(10, 0), (1410065408, 2));
         /// assert_eq!(1_000_000_000u32.carrying_mul(10, 10), (1410065418, 2));
-        #[doc = concat!($AdaptiveTestPrefix, "assert_eq!(",
+        #[doc = concat!("assert_eq!(",
             stringify!($SelfT), "::MAX.carrying_mul(", stringify!($SelfT), "::MAX, ", stringify!($SelfT), "::MAX), ",
             "(0, ", stringify!($SelfT), "::MAX));"
         )]
@@ -203,14 +197,12 @@ macro_rules! widening_impl {
 impl i8 {
     int_impl! { i8, i8, u8, 8, 7, -128, 127, 2, "-0x7e", "0xa", "0x12", "0x12", "0x48",
     "[0x12]", "[0x12]", "", "" }
-    widening_impl! { i8, i16, 8, signed }
 }
 
 #[lang = "i16"]
 impl i16 {
     int_impl! { i16, i16, u16, 16, 15, -32768, 32767, 4, "-0x5ffd", "0x3a", "0x1234", "0x3412",
     "0x2c48", "[0x34, 0x12]", "[0x12, 0x34]", "", "" }
-    widening_impl! { i16, i32, 16, signed }
 }
 
 #[lang = "i32"]
@@ -218,7 +210,6 @@ impl i32 {
     int_impl! { i32, i32, u32, 32, 31, -2147483648, 2147483647, 8, "0x10000b3", "0xb301",
     "0x12345678", "0x78563412", "0x1e6a2c48", "[0x78, 0x56, 0x34, 0x12]",
     "[0x12, 0x34, 0x56, 0x78]", "", "" }
-    widening_impl! { i32, i64, 32, signed }
 }
 
 #[lang = "i64"]
@@ -227,7 +218,6 @@ impl i64 {
     "0xaa00000000006e1", "0x6e10aa", "0x1234567890123456", "0x5634129078563412",
     "0x6a2c48091e6a2c48", "[0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]",
     "[0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]", "", "" }
-    widening_impl! { i64, i128, 64, signed }
 }
 
 #[lang = "i128"]
@@ -248,7 +238,6 @@ impl isize {
     int_impl! { isize, i16, usize, 16, 15, -32768, 32767, 4, "-0x5ffd", "0x3a", "0x1234",
     "0x3412", "0x2c48", "[0x34, 0x12]", "[0x12, 0x34]",
     usize_isize_to_xe_bytes_doc!(), usize_isize_from_xe_bytes_doc!() }
-    widening_impl! { isize, i32, 16, signed }
 }
 
 #[cfg(target_pointer_width = "32")]
@@ -258,7 +247,6 @@ impl isize {
     "0x12345678", "0x78563412", "0x1e6a2c48", "[0x78, 0x56, 0x34, 0x12]",
     "[0x12, 0x34, 0x56, 0x78]",
     usize_isize_to_xe_bytes_doc!(), usize_isize_from_xe_bytes_doc!() }
-    widening_impl! { isize, i64, 32, signed }
 }
 
 #[cfg(target_pointer_width = "64")]
@@ -269,7 +257,6 @@ impl isize {
     "0x6a2c48091e6a2c48", "[0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]",
     "[0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]",
     usize_isize_to_xe_bytes_doc!(), usize_isize_from_xe_bytes_doc!() }
-    widening_impl! { isize, i128, 64, signed }
 }
 
 /// If 6th bit set ascii is upper case.
diff --git a/library/core/tests/simd.rs b/library/core/tests/simd.rs
index 8c11d788c67..50c92968c9d 100644
--- a/library/core/tests/simd.rs
+++ b/library/core/tests/simd.rs
@@ -1,3 +1,5 @@
+#![cfg(not(miri))] // Miri does not support all SIMD intrinsics
+
 use core::simd::f32x4;
 
 #[test]
diff --git a/library/std/src/fs.rs b/library/std/src/fs.rs
index e13add799bc..a14f1e2ecb2 100644
--- a/library/std/src/fs.rs
+++ b/library/std/src/fs.rs
@@ -358,7 +358,7 @@ impl File {
     ///
     /// It is equivalent to `OpenOptions::new()` but allows you to write more
     /// readable code. Instead of `OpenOptions::new().read(true).open("foo.txt")`
-    /// you can write `File::with_options().read(true).open("foo.txt")`. This
+    /// you can write `File::options().read(true).open("foo.txt")`. This
     /// also avoids the need to import `OpenOptions`.
     ///
     /// See the [`OpenOptions::new`] function for more details.
@@ -366,17 +366,16 @@ impl File {
     /// # Examples
     ///
     /// ```no_run
-    /// #![feature(with_options)]
     /// use std::fs::File;
     ///
     /// fn main() -> std::io::Result<()> {
-    ///     let mut f = File::with_options().read(true).open("foo.txt")?;
+    ///     let mut f = File::options().read(true).open("foo.txt")?;
     ///     Ok(())
     /// }
     /// ```
     #[must_use]
-    #[unstable(feature = "with_options", issue = "65439")]
-    pub fn with_options() -> OpenOptions {
+    #[stable(feature = "with_options", since = "1.58.0")]
+    pub fn options() -> OpenOptions {
         OpenOptions::new()
     }
 
diff --git a/library/std/src/fs/tests.rs b/library/std/src/fs/tests.rs
index 628de13156c..1417d860c47 100644
--- a/library/std/src/fs/tests.rs
+++ b/library/std/src/fs/tests.rs
@@ -833,20 +833,11 @@ fn symlink_noexist() {
 fn read_link() {
     if cfg!(windows) {
         // directory symlink
-        assert_eq!(
-            check!(fs::read_link(r"C:\Users\All Users")).to_str().unwrap(),
-            r"C:\ProgramData"
-        );
+        assert_eq!(check!(fs::read_link(r"C:\Users\All Users")), Path::new(r"C:\ProgramData"));
         // junction
-        assert_eq!(
-            check!(fs::read_link(r"C:\Users\Default User")).to_str().unwrap(),
-            r"C:\Users\Default"
-        );
+        assert_eq!(check!(fs::read_link(r"C:\Users\Default User")), Path::new(r"C:\Users\Default"));
         // junction with special permissions
-        assert_eq!(
-            check!(fs::read_link(r"C:\Documents and Settings\")).to_str().unwrap(),
-            r"C:\Users"
-        );
+        assert_eq!(check!(fs::read_link(r"C:\Documents and Settings\")), Path::new(r"C:\Users"));
     }
     let tmpdir = tmpdir();
     let link = tmpdir.join("link");
diff --git a/library/std/src/os/wasi/fs.rs b/library/std/src/os/wasi/fs.rs
index 907368061d7..5c62679f552 100644
--- a/library/std/src/os/wasi/fs.rs
+++ b/library/std/src/os/wasi/fs.rs
@@ -444,18 +444,22 @@ pub trait FileTypeExt {
     /// Returns `true` if this file type is a block device.
     fn is_block_device(&self) -> bool;
     /// Returns `true` if this file type is a character device.
-    fn is_character_device(&self) -> bool;
+    fn is_char_device(&self) -> bool;
     /// Returns `true` if this file type is a socket datagram.
     fn is_socket_dgram(&self) -> bool;
     /// Returns `true` if this file type is a socket stream.
     fn is_socket_stream(&self) -> bool;
+    /// Returns `true` if this file type is any type of socket.
+    fn is_socket(&self) -> bool {
+        self.is_socket_stream() || self.is_socket_dgram()
+    }
 }
 
 impl FileTypeExt for fs::FileType {
     fn is_block_device(&self) -> bool {
         self.as_inner().bits() == wasi::FILETYPE_BLOCK_DEVICE
     }
-    fn is_character_device(&self) -> bool {
+    fn is_char_device(&self) -> bool {
         self.as_inner().bits() == wasi::FILETYPE_CHARACTER_DEVICE
     }
     fn is_socket_dgram(&self) -> bool {
diff --git a/library/std/src/process.rs b/library/std/src/process.rs
index b4dab41f066..4e9fd51f282 100644
--- a/library/std/src/process.rs
+++ b/library/std/src/process.rs
@@ -106,6 +106,7 @@ mod tests;
 
 use crate::io::prelude::*;
 
+use crate::convert::Infallible;
 use crate::ffi::OsStr;
 use crate::fmt;
 use crate::fs;
@@ -2066,6 +2067,14 @@ impl<E: fmt::Debug> Termination for Result<!, E> {
 }
 
 #[unstable(feature = "termination_trait_lib", issue = "43301")]
+impl<E: fmt::Debug> Termination for Result<Infallible, E> {
+    fn report(self) -> i32 {
+        let Err(err) = self;
+        Err::<!, _>(err).report()
+    }
+}
+
+#[unstable(feature = "termination_trait_lib", issue = "43301")]
 impl Termination for ExitCode {
     #[inline]
     fn report(self) -> i32 {
diff --git a/src/doc/rustc/src/codegen-options/index.md b/src/doc/rustc/src/codegen-options/index.md
index 4f8c4c66f88..0201b88417a 100644
--- a/src/doc/rustc/src/codegen-options/index.md
+++ b/src/doc/rustc/src/codegen-options/index.md
@@ -525,6 +525,22 @@ platforms. Possible values are:
 Note that `packed` and `unpacked` are gated behind `-Z unstable-options` on
 non-macOS platforms at this time.
 
+## strip
+
+The option `-C strip=val` controls stripping of debuginfo and similar auxiliary
+data from binaries during linking.
+
+Supported values for this option are:
+
+- `none` - debuginfo and symbols (if they exist) are copied to the produced
+  binary or separate files depending on the target (e.g. `.pdb` files in case
+  of MSVC).
+- `debuginfo` - debuginfo sections and debuginfo symbols from the symbol table
+  section are stripped at link time and are not copied to the produced binary
+  or separate files.
+- `symbols` - same as `debuginfo`, but the rest of the symbol table section is
+  stripped as well if the linker supports it.
+
 ## target-cpu
 
 This instructs `rustc` to generate code specifically for a particular processor.
diff --git a/src/doc/unstable-book/src/compiler-flags/strip.md b/src/doc/unstable-book/src/compiler-flags/strip.md
deleted file mode 100644
index 52cb98113c0..00000000000
--- a/src/doc/unstable-book/src/compiler-flags/strip.md
+++ /dev/null
@@ -1,17 +0,0 @@
-# `strip`
-
-The tracking issue for this feature is: [#72110](https://github.com/rust-lang/rust/issues/72110).
-
-------------------------
-
-Option `-Z strip=val` controls stripping of debuginfo and similar auxiliary data from binaries
-during linking.
-
-Supported values for this option are:
-
-- `none` - debuginfo and symbols (if they exist) are copied to the produced binary or separate files
-depending on the target (e.g. `.pdb` files in case of MSVC).
-- `debuginfo` - debuginfo sections and debuginfo symbols from the symbol table section
-are stripped at link time and are not copied to the produced binary or separate files.
-- `symbols` - same as `debuginfo`, but the rest of the symbol table section is stripped as well
-if the linker supports it.
diff --git a/src/test/ui/c-stack-returning-int64.rs b/src/test/ui/abi/c-stack-returning-int64.rs
index fb3cb2083e4..fb3cb2083e4 100644
--- a/src/test/ui/c-stack-returning-int64.rs
+++ b/src/test/ui/abi/c-stack-returning-int64.rs
diff --git a/src/test/ui/x86stdcall.rs b/src/test/ui/abi/x86stdcall.rs
index 868923e5932..868923e5932 100644
--- a/src/test/ui/x86stdcall.rs
+++ b/src/test/ui/abi/x86stdcall.rs
diff --git a/src/test/ui/x86stdcall2.rs b/src/test/ui/abi/x86stdcall2.rs
index 563e3aba632..563e3aba632 100644
--- a/src/test/ui/x86stdcall2.rs
+++ b/src/test/ui/abi/x86stdcall2.rs
diff --git a/src/test/ui/default-alloc-error-hook.rs b/src/test/ui/alloc-error/default-alloc-error-hook.rs
index 100e974977c..100e974977c 100644
--- a/src/test/ui/default-alloc-error-hook.rs
+++ b/src/test/ui/alloc-error/default-alloc-error-hook.rs
diff --git a/src/test/ui/alloca-from-derived-tydesc.rs b/src/test/ui/alloca-from-derived-tydesc.rs
deleted file mode 100644
index c7f7fbad435..00000000000
--- a/src/test/ui/alloca-from-derived-tydesc.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-// run-pass
-
-#![allow(non_camel_case_types)]
-#![allow(dead_code)]
-
-
-// pretty-expanded FIXME #23616
-
-enum option<T> { some(T), none, }
-
-struct R<T> {v: Vec<option<T>> }
-
-fn f<T>() -> Vec<T> { return Vec::new(); }
-
-pub fn main() { let mut r: R<isize> = R {v: Vec::new()}; r.v = f(); }
diff --git a/src/test/ui/associated-item-long-paths.rs b/src/test/ui/associated-types/associated-item-long-paths.rs
index aad8c487c5a..aad8c487c5a 100644
--- a/src/test/ui/associated-item-long-paths.rs
+++ b/src/test/ui/associated-types/associated-item-long-paths.rs
diff --git a/src/test/ui/default-associated-types.rs b/src/test/ui/associated-types/default-associated-types.rs
index aae70bffa38..aae70bffa38 100644
--- a/src/test/ui/default-associated-types.rs
+++ b/src/test/ui/associated-types/default-associated-types.rs
diff --git a/src/test/ui/parser/incorrect-move-async-order-issue-79694.fixed b/src/test/ui/async-await/incorrect-move-async-order-issue-79694.fixed
index 055800d23b6..055800d23b6 100644
--- a/src/test/ui/parser/incorrect-move-async-order-issue-79694.fixed
+++ b/src/test/ui/async-await/incorrect-move-async-order-issue-79694.fixed
diff --git a/src/test/ui/parser/incorrect-move-async-order-issue-79694.rs b/src/test/ui/async-await/incorrect-move-async-order-issue-79694.rs
index e8be16516d6..e8be16516d6 100644
--- a/src/test/ui/parser/incorrect-move-async-order-issue-79694.rs
+++ b/src/test/ui/async-await/incorrect-move-async-order-issue-79694.rs
diff --git a/src/test/ui/parser/incorrect-move-async-order-issue-79694.stderr b/src/test/ui/async-await/incorrect-move-async-order-issue-79694.stderr
index 5367b986d2b..5367b986d2b 100644
--- a/src/test/ui/parser/incorrect-move-async-order-issue-79694.stderr
+++ b/src/test/ui/async-await/incorrect-move-async-order-issue-79694.stderr
diff --git a/src/test/ui/attr-eq-token-tree.rs b/src/test/ui/attributes/attr-eq-token-tree.rs
index 330b119772a..330b119772a 100644
--- a/src/test/ui/attr-eq-token-tree.rs
+++ b/src/test/ui/attributes/attr-eq-token-tree.rs
diff --git a/src/test/ui/attr-eq-token-tree.stderr b/src/test/ui/attributes/attr-eq-token-tree.stderr
index 1846444b668..1846444b668 100644
--- a/src/test/ui/attr-eq-token-tree.stderr
+++ b/src/test/ui/attributes/attr-eq-token-tree.stderr
diff --git a/src/test/ui/tool_attributes.rs b/src/test/ui/attributes/tool_attributes.rs
index be4a10c0ee9..be4a10c0ee9 100644
--- a/src/test/ui/tool_attributes.rs
+++ b/src/test/ui/attributes/tool_attributes.rs
diff --git a/src/test/ui/augmented-assignments-feature-gate.rs b/src/test/ui/augmented-assignments-feature-gate.rs
deleted file mode 100644
index 8e686796fee..00000000000
--- a/src/test/ui/augmented-assignments-feature-gate.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-// run-pass
-
-use std::ops::AddAssign;
-
-struct Int(i32);
-
-impl AddAssign<i32> for Int {
-    fn add_assign(&mut self, _: i32) {
-    }
-}
-
-fn main() {
-    let mut x = Int(0);
-    x += 1;
-}
diff --git a/src/test/ui/shift-various-bad-types.rs b/src/test/ui/binop/shift-various-bad-types.rs
index 31224bbca1e..31224bbca1e 100644
--- a/src/test/ui/shift-various-bad-types.rs
+++ b/src/test/ui/binop/shift-various-bad-types.rs
diff --git a/src/test/ui/shift-various-bad-types.stderr b/src/test/ui/binop/shift-various-bad-types.stderr
index 932a435143b..932a435143b 100644
--- a/src/test/ui/shift-various-bad-types.stderr
+++ b/src/test/ui/binop/shift-various-bad-types.stderr
diff --git a/src/test/ui/access-mode-in-closures.rs b/src/test/ui/borrowck/access-mode-in-closures.rs
index 9bd90e70aba..9bd90e70aba 100644
--- a/src/test/ui/access-mode-in-closures.rs
+++ b/src/test/ui/borrowck/access-mode-in-closures.rs
diff --git a/src/test/ui/access-mode-in-closures.stderr b/src/test/ui/borrowck/access-mode-in-closures.stderr
index c32e944afe3..c32e944afe3 100644
--- a/src/test/ui/access-mode-in-closures.stderr
+++ b/src/test/ui/borrowck/access-mode-in-closures.stderr
diff --git a/src/test/ui/lazy-init.rs b/src/test/ui/borrowck/lazy-init.rs
index a4b5d18bb33..a4b5d18bb33 100644
--- a/src/test/ui/lazy-init.rs
+++ b/src/test/ui/borrowck/lazy-init.rs
diff --git a/src/test/ui/new-box-syntax.rs b/src/test/ui/box/new-box-syntax.rs
index c56e1dd4625..c56e1dd4625 100644
--- a/src/test/ui/new-box-syntax.rs
+++ b/src/test/ui/box/new-box-syntax.rs
diff --git a/src/test/ui/codegen-object-shim.rs b/src/test/ui/cast/codegen-object-shim.rs
index 9a85a50ebd9..9a85a50ebd9 100644
--- a/src/test/ui/codegen-object-shim.rs
+++ b/src/test/ui/cast/codegen-object-shim.rs
diff --git a/src/test/ui/crt-static-off-works.rs b/src/test/ui/cfg/crt-static-off-works.rs
index 911467ee54e..911467ee54e 100644
--- a/src/test/ui/crt-static-off-works.rs
+++ b/src/test/ui/cfg/crt-static-off-works.rs
diff --git a/src/test/ui/expanded-cfg.rs b/src/test/ui/cfg/expanded-cfg.rs
index baa161af76a..baa161af76a 100644
--- a/src/test/ui/expanded-cfg.rs
+++ b/src/test/ui/cfg/expanded-cfg.rs
diff --git a/src/test/ui/closure-expected.rs b/src/test/ui/closures/closure-expected.rs
index 68cac3dd85e..68cac3dd85e 100644
--- a/src/test/ui/closure-expected.rs
+++ b/src/test/ui/closures/closure-expected.rs
diff --git a/src/test/ui/closure-expected.stderr b/src/test/ui/closures/closure-expected.stderr
index d4f23078043..d4f23078043 100644
--- a/src/test/ui/closure-expected.stderr
+++ b/src/test/ui/closures/closure-expected.stderr
diff --git a/src/test/ui/closure_promotion.rs b/src/test/ui/closures/closure_promotion.rs
index db36985afe7..db36985afe7 100644
--- a/src/test/ui/closure_promotion.rs
+++ b/src/test/ui/closures/closure_promotion.rs
diff --git a/src/test/ui/semistatement-in-lambda.rs b/src/test/ui/closures/semistatement-in-lambda.rs
index ebd55e0ba02..ebd55e0ba02 100644
--- a/src/test/ui/semistatement-in-lambda.rs
+++ b/src/test/ui/closures/semistatement-in-lambda.rs
diff --git a/src/test/ui/thir-unsafeck-issue-85871.rs b/src/test/ui/closures/thir-unsafeck-issue-85871.rs
index aea539b74df..aea539b74df 100644
--- a/src/test/ui/thir-unsafeck-issue-85871.rs
+++ b/src/test/ui/closures/thir-unsafeck-issue-85871.rs
diff --git a/src/test/ui/unsafe-coercion.rs b/src/test/ui/coercion/unsafe-coercion.rs
index 2478deeab0d..2478deeab0d 100644
--- a/src/test/ui/unsafe-coercion.rs
+++ b/src/test/ui/coercion/unsafe-coercion.rs
diff --git a/src/test/ui/eval-enum.rs b/src/test/ui/consts/eval-enum.rs
index 551f10e66e3..551f10e66e3 100644
--- a/src/test/ui/eval-enum.rs
+++ b/src/test/ui/consts/eval-enum.rs
diff --git a/src/test/ui/eval-enum.stderr b/src/test/ui/consts/eval-enum.stderr
index fb4d903489f..fb4d903489f 100644
--- a/src/test/ui/eval-enum.stderr
+++ b/src/test/ui/consts/eval-enum.stderr
diff --git a/src/test/ui/consts/issue-miri-1910.rs b/src/test/ui/consts/issue-miri-1910.rs
new file mode 100644
index 00000000000..20efa145dbe
--- /dev/null
+++ b/src/test/ui/consts/issue-miri-1910.rs
@@ -0,0 +1,12 @@
+// error-pattern unable to turn pointer into raw bytes
+#![feature(const_ptr_read)]
+#![feature(const_ptr_offset)]
+
+const C: () = unsafe {
+    let foo = Some(&42 as *const i32);
+    let one_and_a_half_pointers = std::mem::size_of::<*const i32>()/2*3;
+    (&foo as *const _ as *const u8).add(one_and_a_half_pointers).read();
+};
+
+fn main() {
+}
diff --git a/src/test/ui/consts/issue-miri-1910.stderr b/src/test/ui/consts/issue-miri-1910.stderr
new file mode 100644
index 00000000000..e2f4ef63588
--- /dev/null
+++ b/src/test/ui/consts/issue-miri-1910.stderr
@@ -0,0 +1,26 @@
+error: any use of this value will cause an error
+  --> $SRC_DIR/core/src/ptr/mod.rs:LL:COL
+   |
+LL |           copy_nonoverlapping(src, tmp.as_mut_ptr(), 1);
+   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+   |           |
+   |           unable to turn pointer into raw bytes
+   |           inside `std::ptr::read::<u8>` at $SRC_DIR/core/src/ptr/mod.rs:LL:COL
+   |           inside `ptr::const_ptr::<impl *const u8>::read` at $SRC_DIR/core/src/ptr/const_ptr.rs:LL:COL
+   |           inside `C` at $DIR/issue-miri-1910.rs:8:5
+   |
+  ::: $DIR/issue-miri-1910.rs:5:1
+   |
+LL | / const C: () = unsafe {
+LL | |     let foo = Some(&42 as *const i32);
+LL | |     let one_and_a_half_pointers = std::mem::size_of::<*const i32>()/2*3;
+LL | |     (&foo as *const _ as *const u8).add(one_and_a_half_pointers).read();
+LL | | };
+   | |__-
+   |
+   = note: `#[deny(const_err)]` on by default
+   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
+   = note: for more information, see issue #71800 <https://github.com/rust-lang/rust/issues/71800>
+
+error: aborting due to previous error
+
diff --git a/src/test/ui/auxiliary/inline_dtor.rs b/src/test/ui/drop/auxiliary/inline_dtor.rs
index 5eee89fdc57..5eee89fdc57 100644
--- a/src/test/ui/auxiliary/inline_dtor.rs
+++ b/src/test/ui/drop/auxiliary/inline_dtor.rs
diff --git a/src/test/ui/use_inline_dtor.rs b/src/test/ui/drop/use_inline_dtor.rs
index ac916de4646..ac916de4646 100644
--- a/src/test/ui/use_inline_dtor.rs
+++ b/src/test/ui/drop/use_inline_dtor.rs
diff --git a/src/test/ui/edition-keywords-2015-2015.rs b/src/test/ui/editions/edition-keywords-2015-2015.rs
index 943d203b806..943d203b806 100644
--- a/src/test/ui/edition-keywords-2015-2015.rs
+++ b/src/test/ui/editions/edition-keywords-2015-2015.rs
diff --git a/src/test/ui/edition-keywords-2018-2015.rs b/src/test/ui/editions/edition-keywords-2018-2015.rs
index 2cb2dfb18a0..2cb2dfb18a0 100644
--- a/src/test/ui/edition-keywords-2018-2015.rs
+++ b/src/test/ui/editions/edition-keywords-2018-2015.rs
diff --git a/src/test/ui/estr-uniq.rs b/src/test/ui/estr-uniq.rs
deleted file mode 100644
index 1d0a4273953..00000000000
--- a/src/test/ui/estr-uniq.rs
+++ /dev/null
@@ -1,15 +0,0 @@
-// run-pass
-
-#![allow(unused_assignments)]
-#![allow(unknown_lints)]
-
-#![allow(dead_assignment)]
-
-pub fn main() {
-    let x : String = "hello".to_string();
-    let _y : String = "there".to_string();
-    let mut z = "thing".to_string();
-    z = x;
-    assert_eq!(z.as_bytes()[0], ('h' as u8));
-    assert_eq!(z.as_bytes()[4], ('o' as u8));
-}
diff --git a/src/test/ui/export-import.rs b/src/test/ui/export-import.rs
deleted file mode 100644
index 3f543636064..00000000000
--- a/src/test/ui/export-import.rs
+++ /dev/null
@@ -1,11 +0,0 @@
-use m::unexported;
-//~^ ERROR: is private
-
-mod m {
-    pub fn exported() { }
-
-    fn unexported() { }
-}
-
-
-fn main() { unexported(); }
diff --git a/src/test/ui/export-import.stderr b/src/test/ui/export-import.stderr
deleted file mode 100644
index 753424c7f88..00000000000
--- a/src/test/ui/export-import.stderr
+++ /dev/null
@@ -1,15 +0,0 @@
-error[E0603]: function `unexported` is private
-  --> $DIR/export-import.rs:1:8
-   |
-LL | use m::unexported;
-   |        ^^^^^^^^^^ private function
-   |
-note: the function `unexported` is defined here
-  --> $DIR/export-import.rs:7:5
-   |
-LL |     fn unexported() { }
-   |     ^^^^^^^^^^^^^^^
-
-error: aborting due to previous error
-
-For more information about this error, try `rustc --explain E0603`.
diff --git a/src/test/ui/export-non-interference2.rs b/src/test/ui/export-non-interference2.rs
deleted file mode 100644
index 6d18b03891a..00000000000
--- a/src/test/ui/export-non-interference2.rs
+++ /dev/null
@@ -1,11 +0,0 @@
-// run-pass
-
-mod foo {
-    pub mod bar {
-        pub fn y() { super::super::foo::x(); }
-    }
-
-    pub fn x() { println!("x"); }
-}
-
-pub fn main() { self::foo::bar::y(); }
diff --git a/src/test/ui/export-non-interference3.rs b/src/test/ui/export-non-interference3.rs
deleted file mode 100644
index 0d6b6369f94..00000000000
--- a/src/test/ui/export-non-interference3.rs
+++ /dev/null
@@ -1,11 +0,0 @@
-// run-pass
-
-pub mod foo {
-    pub fn x() { ::bar::x(); }
-}
-
-pub mod bar {
-    pub fn x() { println!("x"); }
-}
-
-pub fn main() { foo::x(); }
diff --git a/src/test/ui/export2.rs b/src/test/ui/export2.rs
deleted file mode 100644
index 64ebeddffa8..00000000000
--- a/src/test/ui/export2.rs
+++ /dev/null
@@ -1,11 +0,0 @@
-mod foo {
-    pub fn x() { bar::x(); } //~ ERROR failed to resolve: use of undeclared crate or module `bar`
-}
-
-mod bar {
-    fn x() { println!("x"); }
-
-    pub fn y() { }
-}
-
-fn main() { foo::x(); }
diff --git a/src/test/ui/export2.stderr b/src/test/ui/export2.stderr
deleted file mode 100644
index 7cf47d0764b..00000000000
--- a/src/test/ui/export2.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-error[E0433]: failed to resolve: use of undeclared crate or module `bar`
-  --> $DIR/export2.rs:2:18
-   |
-LL |     pub fn x() { bar::x(); }
-   |                  ^^^ use of undeclared crate or module `bar`
-
-error: aborting due to previous error
-
-For more information about this error, try `rustc --explain E0433`.
diff --git a/src/test/ui/expr-block-unique.rs b/src/test/ui/expr-block-unique.rs
deleted file mode 100644
index 5fa11ad1283..00000000000
--- a/src/test/ui/expr-block-unique.rs
+++ /dev/null
@@ -1,4 +0,0 @@
-// run-pass
-#![allow(unused_braces)]
-
-pub fn main() { let x: Box<_> = { Box::new(100) }; assert_eq!(*x, 100); }
diff --git a/src/test/ui/expr-if.rs b/src/test/ui/expr/if/expr-if.rs
index 2b8474ff453..2b8474ff453 100644
--- a/src/test/ui/expr-if.rs
+++ b/src/test/ui/expr/if/expr-if.rs
diff --git a/src/test/ui/auxiliary/reexport-should-still-link.rs b/src/test/ui/extern/auxiliary/reexport-should-still-link.rs
index 237ea8dfcf3..237ea8dfcf3 100644
--- a/src/test/ui/auxiliary/reexport-should-still-link.rs
+++ b/src/test/ui/extern/auxiliary/reexport-should-still-link.rs
diff --git a/src/test/ui/gated-bad-feature.rs b/src/test/ui/feature-gates/gated-bad-feature.rs
index f8aa23d95e5..f8aa23d95e5 100644
--- a/src/test/ui/gated-bad-feature.rs
+++ b/src/test/ui/feature-gates/gated-bad-feature.rs
diff --git a/src/test/ui/gated-bad-feature.stderr b/src/test/ui/feature-gates/gated-bad-feature.stderr
index a8ec9391523..a8ec9391523 100644
--- a/src/test/ui/gated-bad-feature.stderr
+++ b/src/test/ui/feature-gates/gated-bad-feature.stderr
diff --git a/src/test/ui/stable-features.rs b/src/test/ui/feature-gates/stable-features.rs
index ed7f0899d1c..ed7f0899d1c 100644
--- a/src/test/ui/stable-features.rs
+++ b/src/test/ui/feature-gates/stable-features.rs
diff --git a/src/test/ui/stable-features.stderr b/src/test/ui/feature-gates/stable-features.stderr
index 831b40b8612..831b40b8612 100644
--- a/src/test/ui/stable-features.stderr
+++ b/src/test/ui/feature-gates/stable-features.stderr
diff --git a/src/test/ui/expr-fn.rs b/src/test/ui/fn/expr-fn.rs
index 253cbfd5d38..253cbfd5d38 100644
--- a/src/test/ui/expr-fn.rs
+++ b/src/test/ui/fn/expr-fn.rs
diff --git a/src/test/ui/nested-function-names-issue-8587.rs b/src/test/ui/fn/nested-function-names-issue-8587.rs
index 8fafd41d9bc..8fafd41d9bc 100644
--- a/src/test/ui/nested-function-names-issue-8587.rs
+++ b/src/test/ui/fn/nested-function-names-issue-8587.rs
diff --git a/src/test/ui/while-let.rs b/src/test/ui/for-loop-while/while-let-2.rs
index b9a49b47c8f..b9a49b47c8f 100644
--- a/src/test/ui/while-let.rs
+++ b/src/test/ui/for-loop-while/while-let-2.rs
diff --git a/src/test/ui/while-let.stderr b/src/test/ui/for-loop-while/while-let-2.stderr
index c5e2fd92f04..cb1abd43571 100644
--- a/src/test/ui/while-let.stderr
+++ b/src/test/ui/for-loop-while/while-let-2.stderr
@@ -1,5 +1,5 @@
 warning: irrefutable `while let` pattern
-  --> $DIR/while-let.rs:7:19
+  --> $DIR/while-let-2.rs:7:19
    |
 LL |               while let $p = $e $b
    |                     ^^^
@@ -15,7 +15,7 @@ LL | |     });
    = note: this warning originates in the macro `foo` (in Nightly builds, run with -Z macro-backtrace for more info)
 
 warning: irrefutable `while let` pattern
-  --> $DIR/while-let.rs:7:19
+  --> $DIR/while-let-2.rs:7:19
    |
 LL |               while let $p = $e $b
    |                     ^^^
@@ -30,7 +30,7 @@ LL | |     });
    = note: this warning originates in the macro `foo` (in Nightly builds, run with -Z macro-backtrace for more info)
 
 warning: irrefutable `while let` pattern
-  --> $DIR/while-let.rs:27:11
+  --> $DIR/while-let-2.rs:27:11
    |
 LL |     while let _a = 1 {
    |           ^^^^^^^^^^
diff --git a/src/test/ui/autobind.rs b/src/test/ui/generics/autobind.rs
index 70606a2a200..70606a2a200 100644
--- a/src/test/ui/autobind.rs
+++ b/src/test/ui/generics/autobind.rs
diff --git a/src/test/ui/lifetime-before-type-params.rs b/src/test/ui/generics/lifetime-before-type-params.rs
index 5a71d6efeda..5a71d6efeda 100644
--- a/src/test/ui/lifetime-before-type-params.rs
+++ b/src/test/ui/generics/lifetime-before-type-params.rs
diff --git a/src/test/ui/lifetime-before-type-params.stderr b/src/test/ui/generics/lifetime-before-type-params.stderr
index 047bc7f6d90..047bc7f6d90 100644
--- a/src/test/ui/lifetime-before-type-params.stderr
+++ b/src/test/ui/generics/lifetime-before-type-params.stderr
diff --git a/src/test/ui/type-params-in-for-each.rs b/src/test/ui/generics/type-params-in-for-each.rs
index 53475d28047..53475d28047 100644
--- a/src/test/ui/type-params-in-for-each.rs
+++ b/src/test/ui/generics/type-params-in-for-each.rs
diff --git a/src/test/ui/export-multi.rs b/src/test/ui/imports/export-multi.rs
index 02bdbe8afff..02bdbe8afff 100644
--- a/src/test/ui/export-multi.rs
+++ b/src/test/ui/imports/export-multi.rs
diff --git a/src/test/ui/glob-cycles.rs b/src/test/ui/imports/glob-cycles.rs
index f354cc885d0..f354cc885d0 100644
--- a/src/test/ui/glob-cycles.rs
+++ b/src/test/ui/imports/glob-cycles.rs
diff --git a/src/test/ui/no-std-inject.rs b/src/test/ui/imports/no-std-inject.rs
index e9664a4dd48..e9664a4dd48 100644
--- a/src/test/ui/no-std-inject.rs
+++ b/src/test/ui/imports/no-std-inject.rs
diff --git a/src/test/ui/no-std-inject.stderr b/src/test/ui/imports/no-std-inject.stderr
index 8e226804890..8e226804890 100644
--- a/src/test/ui/no-std-inject.stderr
+++ b/src/test/ui/imports/no-std-inject.stderr
diff --git a/src/test/ui/use-mod.rs b/src/test/ui/imports/use-mod.rs
index 84da2e70878..84da2e70878 100644
--- a/src/test/ui/use-mod.rs
+++ b/src/test/ui/imports/use-mod.rs
diff --git a/src/test/ui/question-mark-type-infer.rs b/src/test/ui/inference/question-mark-type-infer.rs
index 2ef8618192f..2ef8618192f 100644
--- a/src/test/ui/question-mark-type-infer.rs
+++ b/src/test/ui/inference/question-mark-type-infer.rs
diff --git a/src/test/ui/question-mark-type-infer.stderr b/src/test/ui/inference/question-mark-type-infer.stderr
index 86c533d7a59..86c533d7a59 100644
--- a/src/test/ui/question-mark-type-infer.stderr
+++ b/src/test/ui/inference/question-mark-type-infer.stderr
diff --git a/src/test/ui/simple-infer.rs b/src/test/ui/inference/simple-infer.rs
index 561e4fdec7c..561e4fdec7c 100644
--- a/src/test/ui/simple-infer.rs
+++ b/src/test/ui/inference/simple-infer.rs
diff --git a/src/test/ui/keyword-changes-2012-07-31.rs b/src/test/ui/keyword-changes-2012-07-31.rs
deleted file mode 100644
index 1b38527ec29..00000000000
--- a/src/test/ui/keyword-changes-2012-07-31.rs
+++ /dev/null
@@ -1,20 +0,0 @@
-// run-pass
-
-#![allow(dead_code)]
-// return -> return
-// mod -> module
-// match -> match
-
-// pretty-expanded FIXME #23616
-
-pub fn main() {
-}
-
-mod foo {
-}
-
-fn bar() -> isize {
-    match 0 {
-      _ => { 0 }
-    }
-}
diff --git a/src/test/ui/no_owned_box_lang_item.rs b/src/test/ui/lang-items/no_owned_box_lang_item.rs
index c22b44ffca2..c22b44ffca2 100644
--- a/src/test/ui/no_owned_box_lang_item.rs
+++ b/src/test/ui/lang-items/no_owned_box_lang_item.rs
diff --git a/src/test/ui/no_owned_box_lang_item.stderr b/src/test/ui/lang-items/no_owned_box_lang_item.stderr
index c55c246b5e1..c55c246b5e1 100644
--- a/src/test/ui/no_owned_box_lang_item.stderr
+++ b/src/test/ui/lang-items/no_owned_box_lang_item.stderr
diff --git a/src/test/ui/auxiliary/linkage1.rs b/src/test/ui/linkage-attr/auxiliary/linkage1.rs
index e87ce5e4d31..e87ce5e4d31 100644
--- a/src/test/ui/auxiliary/linkage1.rs
+++ b/src/test/ui/linkage-attr/auxiliary/linkage1.rs
diff --git a/src/test/ui/linkage1.rs b/src/test/ui/linkage-attr/linkage1.rs
index deab7a251cb..deab7a251cb 100644
--- a/src/test/ui/linkage1.rs
+++ b/src/test/ui/linkage-attr/linkage1.rs
diff --git a/src/test/ui/test-allow-dead-extern-static-no-warning.rs b/src/test/ui/lint/test-allow-dead-extern-static-no-warning.rs
index 2583e431ec1..2583e431ec1 100644
--- a/src/test/ui/test-allow-dead-extern-static-no-warning.rs
+++ b/src/test/ui/lint/test-allow-dead-extern-static-no-warning.rs
diff --git a/src/test/ui/warn-path-statement.rs b/src/test/ui/lint/warn-path-statement.rs
index 2435be623f3..2435be623f3 100644
--- a/src/test/ui/warn-path-statement.rs
+++ b/src/test/ui/lint/warn-path-statement.rs
diff --git a/src/test/ui/warn-path-statement.stderr b/src/test/ui/lint/warn-path-statement.stderr
index 248d2ef299b..248d2ef299b 100644
--- a/src/test/ui/warn-path-statement.stderr
+++ b/src/test/ui/lint/warn-path-statement.stderr
diff --git a/src/test/ui/auxiliary/debuginfo-lto-aux.rs b/src/test/ui/lto/auxiliary/debuginfo-lto-aux.rs
index dd471154b4f..dd471154b4f 100644
--- a/src/test/ui/auxiliary/debuginfo-lto-aux.rs
+++ b/src/test/ui/lto/auxiliary/debuginfo-lto-aux.rs
diff --git a/src/test/ui/debuginfo-lto.rs b/src/test/ui/lto/debuginfo-lto.rs
index 43f75b0344b..43f75b0344b 100644
--- a/src/test/ui/debuginfo-lto.rs
+++ b/src/test/ui/lto/debuginfo-lto.rs
diff --git a/src/test/ui/fat-lto.rs b/src/test/ui/lto/fat-lto.rs
index c8d8095a265..c8d8095a265 100644
--- a/src/test/ui/fat-lto.rs
+++ b/src/test/ui/lto/fat-lto.rs
diff --git a/src/test/ui/auxiliary/proc_macro_def.rs b/src/test/ui/macros/auxiliary/proc_macro_def.rs
index 0497e4ae07d..0497e4ae07d 100644
--- a/src/test/ui/auxiliary/proc_macro_def.rs
+++ b/src/test/ui/macros/auxiliary/proc_macro_def.rs
diff --git a/src/test/ui/concat.rs b/src/test/ui/macros/concat.rs
index d7ab7d62625..d7ab7d62625 100644
--- a/src/test/ui/concat.rs
+++ b/src/test/ui/macros/concat.rs
diff --git a/src/test/ui/concat.stderr b/src/test/ui/macros/concat.stderr
index 61fb9de1ef9..61fb9de1ef9 100644
--- a/src/test/ui/concat.stderr
+++ b/src/test/ui/macros/concat.stderr
diff --git a/src/test/ui/include-single-expr-helper-1.rs b/src/test/ui/macros/include-single-expr-helper-1.rs
index aa6380bd24d..aa6380bd24d 100644
--- a/src/test/ui/include-single-expr-helper-1.rs
+++ b/src/test/ui/macros/include-single-expr-helper-1.rs
diff --git a/src/test/ui/include-single-expr-helper.rs b/src/test/ui/macros/include-single-expr-helper.rs
index 84d8b69603b..84d8b69603b 100644
--- a/src/test/ui/include-single-expr-helper.rs
+++ b/src/test/ui/macros/include-single-expr-helper.rs
diff --git a/src/test/ui/include-single-expr.rs b/src/test/ui/macros/include-single-expr.rs
index 0f4c29ec014..0f4c29ec014 100644
--- a/src/test/ui/include-single-expr.rs
+++ b/src/test/ui/macros/include-single-expr.rs
diff --git a/src/test/ui/include-single-expr.stderr b/src/test/ui/macros/include-single-expr.stderr
index 80eecf8f1b9..80eecf8f1b9 100644
--- a/src/test/ui/include-single-expr.stderr
+++ b/src/test/ui/macros/include-single-expr.stderr
diff --git a/src/test/ui/malformed_macro_lhs.rs b/src/test/ui/macros/malformed_macro_lhs.rs
index f57d2fb4dc9..f57d2fb4dc9 100644
--- a/src/test/ui/malformed_macro_lhs.rs
+++ b/src/test/ui/macros/malformed_macro_lhs.rs
diff --git a/src/test/ui/malformed_macro_lhs.stderr b/src/test/ui/macros/malformed_macro_lhs.stderr
index adf64b08935..adf64b08935 100644
--- a/src/test/ui/malformed_macro_lhs.stderr
+++ b/src/test/ui/macros/malformed_macro_lhs.stderr
diff --git a/src/test/ui/no-std-macros.rs b/src/test/ui/macros/no-std-macros.rs
index ada643c7ac0..ada643c7ac0 100644
--- a/src/test/ui/no-std-macros.rs
+++ b/src/test/ui/macros/no-std-macros.rs
diff --git a/src/test/ui/proc_macro.rs b/src/test/ui/macros/proc_macro.rs
index 66f9cdc5567..66f9cdc5567 100644
--- a/src/test/ui/proc_macro.rs
+++ b/src/test/ui/macros/proc_macro.rs
diff --git a/src/test/ui/lub-match.nll.stderr b/src/test/ui/nll/lub-match.nll.stderr
index 3a344a77d2c..3a344a77d2c 100644
--- a/src/test/ui/lub-match.nll.stderr
+++ b/src/test/ui/nll/lub-match.nll.stderr
diff --git a/src/test/ui/lub-match.rs b/src/test/ui/nll/lub-match.rs
index 1cd4a02a3ef..1cd4a02a3ef 100644
--- a/src/test/ui/lub-match.rs
+++ b/src/test/ui/nll/lub-match.rs
diff --git a/src/test/ui/lub-match.stderr b/src/test/ui/nll/lub-match.stderr
index 04d50f5ebf4..04d50f5ebf4 100644
--- a/src/test/ui/lub-match.stderr
+++ b/src/test/ui/nll/lub-match.stderr
diff --git a/src/test/ui/ref-suggestion.rs b/src/test/ui/nll/ref-suggestion.rs
index 346d118f0f9..346d118f0f9 100644
--- a/src/test/ui/ref-suggestion.rs
+++ b/src/test/ui/nll/ref-suggestion.rs
diff --git a/src/test/ui/ref-suggestion.stderr b/src/test/ui/nll/ref-suggestion.stderr
index a973c583a9d..a973c583a9d 100644
--- a/src/test/ui/ref-suggestion.stderr
+++ b/src/test/ui/nll/ref-suggestion.stderr
diff --git a/src/test/ui/integer-literal-suffix-inference.rs b/src/test/ui/numeric/integer-literal-suffix-inference.rs
index c320f2bb7b4..c320f2bb7b4 100644
--- a/src/test/ui/integer-literal-suffix-inference.rs
+++ b/src/test/ui/numeric/integer-literal-suffix-inference.rs
diff --git a/src/test/ui/integer-literal-suffix-inference.stderr b/src/test/ui/numeric/integer-literal-suffix-inference.stderr
index 4c29c4a1cb0..4c29c4a1cb0 100644
--- a/src/test/ui/integer-literal-suffix-inference.stderr
+++ b/src/test/ui/numeric/integer-literal-suffix-inference.stderr
diff --git a/src/test/ui/object-lifetime-default-default-to-static.rs b/src/test/ui/object-lifetime/object-lifetime-default-default-to-static.rs
index 467767ae59d..467767ae59d 100644
--- a/src/test/ui/object-lifetime-default-default-to-static.rs
+++ b/src/test/ui/object-lifetime/object-lifetime-default-default-to-static.rs
diff --git a/src/test/ui/structs-enums/object-lifetime-default-from-ref-struct.rs b/src/test/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs
index e1a865fa503..e1a865fa503 100644
--- a/src/test/ui/structs-enums/object-lifetime-default-from-ref-struct.rs
+++ b/src/test/ui/object-lifetime/object-lifetime-default-from-ref-struct.rs
diff --git a/src/test/ui/object-lifetime-default-from-rptr-box.rs b/src/test/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs
index b61083078cc..b61083078cc 100644
--- a/src/test/ui/object-lifetime-default-from-rptr-box.rs
+++ b/src/test/ui/object-lifetime/object-lifetime-default-from-rptr-box.rs
diff --git a/src/test/ui/object-lifetime-default-from-rptr-mut.rs b/src/test/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs
index a09fc03ab9b..a09fc03ab9b 100644
--- a/src/test/ui/object-lifetime-default-from-rptr-mut.rs
+++ b/src/test/ui/object-lifetime/object-lifetime-default-from-rptr-mut.rs
diff --git a/src/test/ui/structs-enums/object-lifetime-default-from-rptr-struct.rs b/src/test/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs
index d3e92e16246..d3e92e16246 100644
--- a/src/test/ui/structs-enums/object-lifetime-default-from-rptr-struct.rs
+++ b/src/test/ui/object-lifetime/object-lifetime-default-from-rptr-struct.rs
diff --git a/src/test/ui/object-lifetime-default-from-rptr.rs b/src/test/ui/object-lifetime/object-lifetime-default-from-rptr.rs
index 5093b1c27d0..5093b1c27d0 100644
--- a/src/test/ui/object-lifetime-default-from-rptr.rs
+++ b/src/test/ui/object-lifetime/object-lifetime-default-from-rptr.rs
diff --git a/src/test/ui/object-lifetime-default-inferred.rs b/src/test/ui/object-lifetime/object-lifetime-default-inferred.rs
index 8a1156b8fc8..8a1156b8fc8 100644
--- a/src/test/ui/object-lifetime-default-inferred.rs
+++ b/src/test/ui/object-lifetime/object-lifetime-default-inferred.rs
diff --git a/src/test/ui/fixup-deref-mut.rs b/src/test/ui/overloaded/fixup-deref-mut.rs
index 6b2fd72b895..6b2fd72b895 100644
--- a/src/test/ui/fixup-deref-mut.rs
+++ b/src/test/ui/overloaded/fixup-deref-mut.rs
diff --git a/src/test/ui/paren-free.rs b/src/test/ui/paren-free.rs
deleted file mode 100644
index 8e8bb8800ec..00000000000
--- a/src/test/ui/paren-free.rs
+++ /dev/null
@@ -1,7 +0,0 @@
-// run-pass
-
-pub fn main() {
-    let x = true;
-    if x { let mut i = 10; while i > 0 { i -= 1; } }
-    match x { true => { println!("right"); } false => { println!("wrong"); } }
-}
diff --git a/src/test/ui/issue-83639.rs b/src/test/ui/parser/issue-83639.rs
index 6ddbedfa0bc..6ddbedfa0bc 100644
--- a/src/test/ui/issue-83639.rs
+++ b/src/test/ui/parser/issue-83639.rs
diff --git a/src/test/ui/issue-83639.stderr b/src/test/ui/parser/issue-83639.stderr
index 4c10df1917c..4c10df1917c 100644
--- a/src/test/ui/issue-83639.stderr
+++ b/src/test/ui/parser/issue-83639.stderr
diff --git a/src/test/ui/obsolete-syntax-impl-for-dotdot.rs b/src/test/ui/parser/obsolete-syntax-impl-for-dotdot.rs
index e928f09aa6d..e928f09aa6d 100644
--- a/src/test/ui/obsolete-syntax-impl-for-dotdot.rs
+++ b/src/test/ui/parser/obsolete-syntax-impl-for-dotdot.rs
diff --git a/src/test/ui/obsolete-syntax-impl-for-dotdot.stderr b/src/test/ui/parser/obsolete-syntax-impl-for-dotdot.stderr
index b7108ced0d7..b7108ced0d7 100644
--- a/src/test/ui/obsolete-syntax-impl-for-dotdot.stderr
+++ b/src/test/ui/parser/obsolete-syntax-impl-for-dotdot.stderr
diff --git a/src/test/ui/ranges-precedence.rs b/src/test/ui/parser/ranges-precedence.rs
index db241ed0ccd..db241ed0ccd 100644
--- a/src/test/ui/ranges-precedence.rs
+++ b/src/test/ui/parser/ranges-precedence.rs
diff --git a/src/test/ui/similar-tokens.rs b/src/test/ui/parser/similar-tokens.rs
index e3024c61ad2..e3024c61ad2 100644
--- a/src/test/ui/similar-tokens.rs
+++ b/src/test/ui/parser/similar-tokens.rs
diff --git a/src/test/ui/similar-tokens.stderr b/src/test/ui/parser/similar-tokens.stderr
index 90acfc052dd..90acfc052dd 100644
--- a/src/test/ui/similar-tokens.stderr
+++ b/src/test/ui/parser/similar-tokens.stderr
diff --git a/src/test/ui/utf8_idents-rpass.rs b/src/test/ui/parser/utf8_idents-rpass.rs
index 206744a58fd..206744a58fd 100644
--- a/src/test/ui/utf8_idents-rpass.rs
+++ b/src/test/ui/parser/utf8_idents-rpass.rs
diff --git a/src/test/ui/useless-pub.rs b/src/test/ui/privacy/useless-pub.rs
index fde7cd5d89d..fde7cd5d89d 100644
--- a/src/test/ui/useless-pub.rs
+++ b/src/test/ui/privacy/useless-pub.rs
diff --git a/src/test/ui/useless-pub.stderr b/src/test/ui/privacy/useless-pub.stderr
index 14c4983ae29..14c4983ae29 100644
--- a/src/test/ui/useless-pub.stderr
+++ b/src/test/ui/privacy/useless-pub.stderr
diff --git a/src/test/ui/auxiliary/cond_plugin.rs b/src/test/ui/proc-macro/auxiliary/cond_plugin.rs
index 8d3c4ec239a..8d3c4ec239a 100644
--- a/src/test/ui/auxiliary/cond_plugin.rs
+++ b/src/test/ui/proc-macro/auxiliary/cond_plugin.rs
diff --git a/src/test/ui/macro-quote-cond.rs b/src/test/ui/proc-macro/macro-quote-cond.rs
index 48307f4d9ae..48307f4d9ae 100644
--- a/src/test/ui/macro-quote-cond.rs
+++ b/src/test/ui/proc-macro/macro-quote-cond.rs
diff --git a/src/test/ui/fds-are-cloexec.rs b/src/test/ui/process/fds-are-cloexec.rs
index 4482b7032a7..4482b7032a7 100644
--- a/src/test/ui/fds-are-cloexec.rs
+++ b/src/test/ui/process/fds-are-cloexec.rs
diff --git a/src/test/ui/sigpipe-should-be-ignored.rs b/src/test/ui/process/sigpipe-should-be-ignored.rs
index 144eeca2318..144eeca2318 100644
--- a/src/test/ui/sigpipe-should-be-ignored.rs
+++ b/src/test/ui/process/sigpipe-should-be-ignored.rs
diff --git a/src/test/ui/purity-infer.rs b/src/test/ui/purity-infer.rs
deleted file mode 100644
index dc0eb89bfa2..00000000000
--- a/src/test/ui/purity-infer.rs
+++ /dev/null
@@ -1,6 +0,0 @@
-// run-pass
-
-fn something<F>(f: F) where F: FnOnce() { f(); }
-pub fn main() {
-    something(|| println!("hi!") );
-}
diff --git a/src/test/ui/readalias.rs b/src/test/ui/readalias.rs
deleted file mode 100644
index a6bf61803cf..00000000000
--- a/src/test/ui/readalias.rs
+++ /dev/null
@@ -1,12 +0,0 @@
-// run-pass
-
-#![allow(dead_code)]
-
-
-
-
-struct Point {x: isize, y: isize, z: isize}
-
-fn f(p: Point) { assert_eq!(p.z, 12); }
-
-pub fn main() { let x: Point = Point {x: 10, y: 11, z: 12}; f(x); }
diff --git a/src/test/ui/instantiable.rs b/src/test/ui/recursion/instantiable.rs
index ad0cf3f4ac9..ad0cf3f4ac9 100644
--- a/src/test/ui/instantiable.rs
+++ b/src/test/ui/recursion/instantiable.rs
diff --git a/src/test/ui/reexport-should-still-link.rs b/src/test/ui/reexport-should-still-link.rs
deleted file mode 100644
index 913da56a184..00000000000
--- a/src/test/ui/reexport-should-still-link.rs
+++ /dev/null
@@ -1,10 +0,0 @@
-// run-pass
-// aux-build:reexport-should-still-link.rs
-
-// pretty-expanded FIXME #23616
-
-extern crate reexport_should_still_link as foo;
-
-pub fn main() {
-    foo::bar();
-}
diff --git a/src/test/ui/init-res-into-things.rs b/src/test/ui/regions/init-res-into-things.rs
index 7f416262dcb..7f416262dcb 100644
--- a/src/test/ui/init-res-into-things.rs
+++ b/src/test/ui/regions/init-res-into-things.rs
diff --git a/src/test/ui/owned-implies-static.rs b/src/test/ui/regions/owned-implies-static.rs
index 2efa8cc02f4..2efa8cc02f4 100644
--- a/src/test/ui/owned-implies-static.rs
+++ b/src/test/ui/regions/owned-implies-static.rs
diff --git a/src/test/ui/rcvr-borrowed-to-region.rs b/src/test/ui/regions/rcvr-borrowed-to-region.rs
index 7f32b8b91a6..7f32b8b91a6 100644
--- a/src/test/ui/rcvr-borrowed-to-region.rs
+++ b/src/test/ui/regions/rcvr-borrowed-to-region.rs
diff --git a/src/test/ui/attr-usage-repr.rs b/src/test/ui/repr/attr-usage-repr.rs
index 8965decc379..8965decc379 100644
--- a/src/test/ui/attr-usage-repr.rs
+++ b/src/test/ui/repr/attr-usage-repr.rs
diff --git a/src/test/ui/attr-usage-repr.stderr b/src/test/ui/repr/attr-usage-repr.stderr
index 42f65625a46..42f65625a46 100644
--- a/src/test/ui/attr-usage-repr.stderr
+++ b/src/test/ui/repr/attr-usage-repr.stderr
diff --git a/src/test/ui/repr.rs b/src/test/ui/repr/repr.rs
index 564d6732601..564d6732601 100644
--- a/src/test/ui/repr.rs
+++ b/src/test/ui/repr/repr.rs
diff --git a/src/test/ui/repr.stderr b/src/test/ui/repr/repr.stderr
index e0bec666381..e0bec666381 100644
--- a/src/test/ui/repr.stderr
+++ b/src/test/ui/repr/repr.stderr
diff --git a/src/test/ui/crate-in-paths.rs b/src/test/ui/resolve/crate-in-paths.rs
index 50ed50cbef0..50ed50cbef0 100644
--- a/src/test/ui/crate-in-paths.rs
+++ b/src/test/ui/resolve/crate-in-paths.rs
diff --git a/src/test/ui/crate-in-paths.stderr b/src/test/ui/resolve/crate-in-paths.stderr
index c3aa135f77d..c3aa135f77d 100644
--- a/src/test/ui/crate-in-paths.stderr
+++ b/src/test/ui/resolve/crate-in-paths.stderr
diff --git a/src/test/ui/editions-crate-root-2018.rs b/src/test/ui/resolve/editions-crate-root-2018.rs
index 61e4329bbb3..61e4329bbb3 100644
--- a/src/test/ui/editions-crate-root-2018.rs
+++ b/src/test/ui/resolve/editions-crate-root-2018.rs
diff --git a/src/test/ui/editions-crate-root-2018.stderr b/src/test/ui/resolve/editions-crate-root-2018.stderr
index 967a5a2fca1..967a5a2fca1 100644
--- a/src/test/ui/editions-crate-root-2018.stderr
+++ b/src/test/ui/resolve/editions-crate-root-2018.stderr
diff --git a/src/test/ui/enums-pats-not-idents.rs b/src/test/ui/resolve/enums-pats-not-idents.rs
index 5b918eef6d6..5b918eef6d6 100644
--- a/src/test/ui/enums-pats-not-idents.rs
+++ b/src/test/ui/resolve/enums-pats-not-idents.rs
diff --git a/src/test/ui/enums-pats-not-idents.stderr b/src/test/ui/resolve/enums-pats-not-idents.stderr
index 072b88716ad..072b88716ad 100644
--- a/src/test/ui/enums-pats-not-idents.stderr
+++ b/src/test/ui/resolve/enums-pats-not-idents.stderr
diff --git a/src/test/ui/no-implicit-prelude-nested.rs b/src/test/ui/resolve/no-implicit-prelude-nested.rs
index c314967da4f..c314967da4f 100644
--- a/src/test/ui/no-implicit-prelude-nested.rs
+++ b/src/test/ui/resolve/no-implicit-prelude-nested.rs
diff --git a/src/test/ui/no-implicit-prelude-nested.stderr b/src/test/ui/resolve/no-implicit-prelude-nested.stderr
index 198b630c52c..198b630c52c 100644
--- a/src/test/ui/no-implicit-prelude-nested.stderr
+++ b/src/test/ui/resolve/no-implicit-prelude-nested.stderr
diff --git a/src/test/ui/resolve-issue-2428.rs b/src/test/ui/resolve/resolve-issue-2428.rs
index 5f3473e9feb..5f3473e9feb 100644
--- a/src/test/ui/resolve-issue-2428.rs
+++ b/src/test/ui/resolve/resolve-issue-2428.rs
diff --git a/src/test/ui/ret-none.rs b/src/test/ui/ret-none.rs
deleted file mode 100644
index d595506e336..00000000000
--- a/src/test/ui/ret-none.rs
+++ /dev/null
@@ -1,13 +0,0 @@
-// run-pass
-
-#![allow(non_camel_case_types)]
-#![allow(dead_code)]
-
-
-// pretty-expanded FIXME #23616
-
-enum option<T> { none, some(T), }
-
-fn f<T>() -> option<T> { return option::none; }
-
-pub fn main() { f::<isize>(); }
diff --git a/src/test/ui/out-of-stack.rs b/src/test/ui/runtime/out-of-stack.rs
index ce02553051d..ce02553051d 100644
--- a/src/test/ui/out-of-stack.rs
+++ b/src/test/ui/runtime/out-of-stack.rs
diff --git a/src/test/ui/rt-explody-panic-payloads.rs b/src/test/ui/runtime/rt-explody-panic-payloads.rs
index dc193582c6a..dc193582c6a 100644
--- a/src/test/ui/rt-explody-panic-payloads.rs
+++ b/src/test/ui/runtime/rt-explody-panic-payloads.rs
diff --git a/src/test/ui/running-with-no-runtime.rs b/src/test/ui/runtime/running-with-no-runtime.rs
index c575a6bec8e..c575a6bec8e 100644
--- a/src/test/ui/running-with-no-runtime.rs
+++ b/src/test/ui/runtime/running-with-no-runtime.rs
diff --git a/src/test/ui/signal-alternate-stack-cleanup.rs b/src/test/ui/runtime/signal-alternate-stack-cleanup.rs
index 8a6d738959e..8a6d738959e 100644
--- a/src/test/ui/signal-alternate-stack-cleanup.rs
+++ b/src/test/ui/runtime/signal-alternate-stack-cleanup.rs
diff --git a/src/test/ui/stdout-during-shutdown.rs b/src/test/ui/runtime/stdout-during-shutdown.rs
index a6cf812ca64..a6cf812ca64 100644
--- a/src/test/ui/stdout-during-shutdown.rs
+++ b/src/test/ui/runtime/stdout-during-shutdown.rs
diff --git a/src/test/ui/stdout-during-shutdown.run.stdout b/src/test/ui/runtime/stdout-during-shutdown.run.stdout
index 30f51a3fba5..30f51a3fba5 100644
--- a/src/test/ui/stdout-during-shutdown.run.stdout
+++ b/src/test/ui/runtime/stdout-during-shutdown.run.stdout
diff --git a/src/test/ui/duplicate_doc_alias.rs b/src/test/ui/rustdoc/duplicate_doc_alias.rs
index a564ab64532..a564ab64532 100644
--- a/src/test/ui/duplicate_doc_alias.rs
+++ b/src/test/ui/rustdoc/duplicate_doc_alias.rs
diff --git a/src/test/ui/duplicate_doc_alias.stderr b/src/test/ui/rustdoc/duplicate_doc_alias.stderr
index 4b2dd1f8eb6..4b2dd1f8eb6 100644
--- a/src/test/ui/duplicate_doc_alias.stderr
+++ b/src/test/ui/rustdoc/duplicate_doc_alias.stderr
diff --git a/src/test/ui/hidden-doc-associated-item.rs b/src/test/ui/rustdoc/hidden-doc-associated-item.rs
index d431f9e899c..d431f9e899c 100644
--- a/src/test/ui/hidden-doc-associated-item.rs
+++ b/src/test/ui/rustdoc/hidden-doc-associated-item.rs
diff --git a/src/test/ui/class-missing-self.rs b/src/test/ui/self/class-missing-self.rs
index 8ad347d20e6..8ad347d20e6 100644
--- a/src/test/ui/class-missing-self.rs
+++ b/src/test/ui/self/class-missing-self.rs
diff --git a/src/test/ui/class-missing-self.stderr b/src/test/ui/self/class-missing-self.stderr
index d501200d73c..d501200d73c 100644
--- a/src/test/ui/class-missing-self.stderr
+++ b/src/test/ui/self/class-missing-self.stderr
diff --git a/src/test/ui/objects-owned-object-owned-method.rs b/src/test/ui/self/objects-owned-object-owned-method.rs
index 15677a5185c..15677a5185c 100644
--- a/src/test/ui/objects-owned-object-owned-method.rs
+++ b/src/test/ui/self/objects-owned-object-owned-method.rs
diff --git a/src/test/ui/refer-to-other-statics-by-value.rs b/src/test/ui/static/refer-to-other-statics-by-value.rs
index 90f1980f858..90f1980f858 100644
--- a/src/test/ui/refer-to-other-statics-by-value.rs
+++ b/src/test/ui/static/refer-to-other-statics-by-value.rs
diff --git a/src/test/ui/static_sized_requirement.rs b/src/test/ui/static/static_sized_requirement.rs
index 3943b260854..3943b260854 100644
--- a/src/test/ui/static_sized_requirement.rs
+++ b/src/test/ui/static/static_sized_requirement.rs
diff --git a/src/test/ui/builtin-clone.rs b/src/test/ui/stdlib-unit-tests/builtin-clone.rs
index 0874d5bc390..0874d5bc390 100644
--- a/src/test/ui/builtin-clone.rs
+++ b/src/test/ui/stdlib-unit-tests/builtin-clone.rs
diff --git a/src/test/ui/eq-multidispatch.rs b/src/test/ui/stdlib-unit-tests/eq-multidispatch.rs
index 69d83f496b3..69d83f496b3 100644
--- a/src/test/ui/eq-multidispatch.rs
+++ b/src/test/ui/stdlib-unit-tests/eq-multidispatch.rs
diff --git a/src/test/ui/istr.rs b/src/test/ui/stdlib-unit-tests/istr.rs
index dca6d40d59a..dca6d40d59a 100644
--- a/src/test/ui/istr.rs
+++ b/src/test/ui/stdlib-unit-tests/istr.rs
diff --git a/src/test/ui/log-knows-the-names-of-variants-in-std.rs b/src/test/ui/stdlib-unit-tests/log-knows-the-names-of-variants-in-std.rs
index c5a40edbeef..c5a40edbeef 100644
--- a/src/test/ui/log-knows-the-names-of-variants-in-std.rs
+++ b/src/test/ui/stdlib-unit-tests/log-knows-the-names-of-variants-in-std.rs
diff --git a/src/test/ui/seq-compare.rs b/src/test/ui/stdlib-unit-tests/seq-compare.rs
index 4078326b559..4078326b559 100644
--- a/src/test/ui/seq-compare.rs
+++ b/src/test/ui/stdlib-unit-tests/seq-compare.rs
diff --git a/src/test/ui/large-records.rs b/src/test/ui/structs/large-records.rs
index 7f850a94e89..7f850a94e89 100644
--- a/src/test/ui/large-records.rs
+++ b/src/test/ui/structs/large-records.rs
diff --git a/src/test/ui/bound-suggestions.fixed b/src/test/ui/suggestions/bound-suggestions.fixed
index 31fdd2b67e2..31fdd2b67e2 100644
--- a/src/test/ui/bound-suggestions.fixed
+++ b/src/test/ui/suggestions/bound-suggestions.fixed
diff --git a/src/test/ui/bound-suggestions.rs b/src/test/ui/suggestions/bound-suggestions.rs
index 86f708d42f5..86f708d42f5 100644
--- a/src/test/ui/bound-suggestions.rs
+++ b/src/test/ui/suggestions/bound-suggestions.rs
diff --git a/src/test/ui/bound-suggestions.stderr b/src/test/ui/suggestions/bound-suggestions.stderr
index 04f233a1e87..04f233a1e87 100644
--- a/src/test/ui/bound-suggestions.stderr
+++ b/src/test/ui/suggestions/bound-suggestions.stderr
diff --git a/src/test/ui/child-outlives-parent.rs b/src/test/ui/threads-sendsync/child-outlives-parent.rs
index e3a39a44bb8..e3a39a44bb8 100644
--- a/src/test/ui/child-outlives-parent.rs
+++ b/src/test/ui/threads-sendsync/child-outlives-parent.rs
diff --git a/src/test/ui/mpsc_stress.rs b/src/test/ui/threads-sendsync/mpsc_stress.rs
index a889542fec0..a889542fec0 100644
--- a/src/test/ui/mpsc_stress.rs
+++ b/src/test/ui/threads-sendsync/mpsc_stress.rs
diff --git a/src/test/ui/unwind-resource.rs b/src/test/ui/threads-sendsync/unwind-resource.rs
index a063bef0822..a063bef0822 100644
--- a/src/test/ui/unwind-resource.rs
+++ b/src/test/ui/threads-sendsync/unwind-resource.rs
diff --git a/src/test/ui/yield.rs b/src/test/ui/threads-sendsync/yield.rs
index e83ba556078..e83ba556078 100644
--- a/src/test/ui/yield.rs
+++ b/src/test/ui/threads-sendsync/yield.rs
diff --git a/src/test/ui/yield1.rs b/src/test/ui/threads-sendsync/yield1.rs
index 002e590550c..002e590550c 100644
--- a/src/test/ui/yield1.rs
+++ b/src/test/ui/threads-sendsync/yield1.rs
diff --git a/src/test/ui/bug-7295.rs b/src/test/ui/traits/bug-7295.rs
index 156ff2ee82f..156ff2ee82f 100644
--- a/src/test/ui/bug-7295.rs
+++ b/src/test/ui/traits/bug-7295.rs
diff --git a/src/test/ui/monad.rs b/src/test/ui/traits/monad.rs
index 5d0612cf8dc..5d0612cf8dc 100644
--- a/src/test/ui/monad.rs
+++ b/src/test/ui/traits/monad.rs
diff --git a/src/test/ui/monomorphized-callees-with-ty-params-3314.rs b/src/test/ui/traits/monomorphized-callees-with-ty-params-3314.rs
index bc314a39d8e..bc314a39d8e 100644
--- a/src/test/ui/monomorphized-callees-with-ty-params-3314.rs
+++ b/src/test/ui/traits/monomorphized-callees-with-ty-params-3314.rs
diff --git a/src/test/ui/multidispatch-conditional-impl-not-considered.rs b/src/test/ui/traits/multidispatch-conditional-impl-not-considered.rs
index f845e198aa5..f845e198aa5 100644
--- a/src/test/ui/multidispatch-conditional-impl-not-considered.rs
+++ b/src/test/ui/traits/multidispatch-conditional-impl-not-considered.rs
diff --git a/src/test/ui/multidispatch1.rs b/src/test/ui/traits/multidispatch1.rs
index f2469e1490e..f2469e1490e 100644
--- a/src/test/ui/multidispatch1.rs
+++ b/src/test/ui/traits/multidispatch1.rs
diff --git a/src/test/ui/multidispatch2.rs b/src/test/ui/traits/multidispatch2.rs
index 20608aabb3b..20608aabb3b 100644
--- a/src/test/ui/multidispatch2.rs
+++ b/src/test/ui/traits/multidispatch2.rs
diff --git a/src/test/ui/objects-owned-object-borrowed-method-headerless.rs b/src/test/ui/traits/objects-owned-object-borrowed-method-headerless.rs
index fce1341fc74..fce1341fc74 100644
--- a/src/test/ui/objects-owned-object-borrowed-method-headerless.rs
+++ b/src/test/ui/traits/objects-owned-object-borrowed-method-headerless.rs
diff --git a/src/test/ui/staticness-mismatch.rs b/src/test/ui/traits/staticness-mismatch.rs
index 8710d01123f..8710d01123f 100644
--- a/src/test/ui/staticness-mismatch.rs
+++ b/src/test/ui/traits/staticness-mismatch.rs
diff --git a/src/test/ui/staticness-mismatch.stderr b/src/test/ui/traits/staticness-mismatch.stderr
index b67ac5adbe1..b67ac5adbe1 100644
--- a/src/test/ui/staticness-mismatch.stderr
+++ b/src/test/ui/traits/staticness-mismatch.stderr
diff --git a/src/test/ui/typeclasses-eq-example-static.rs b/src/test/ui/traits/typeclasses-eq-example-static.rs
index f982ad6a0dd..f982ad6a0dd 100644
--- a/src/test/ui/typeclasses-eq-example-static.rs
+++ b/src/test/ui/traits/typeclasses-eq-example-static.rs
diff --git a/src/test/ui/typeclasses-eq-example.rs b/src/test/ui/traits/typeclasses-eq-example.rs
index 4400301e61e..4400301e61e 100644
--- a/src/test/ui/typeclasses-eq-example.rs
+++ b/src/test/ui/traits/typeclasses-eq-example.rs
diff --git a/src/test/ui/vtable-res-trait-param.rs b/src/test/ui/traits/vtable-res-trait-param.rs
index 3d7c2eb084c..3d7c2eb084c 100644
--- a/src/test/ui/vtable-res-trait-param.rs
+++ b/src/test/ui/traits/vtable-res-trait-param.rs
diff --git a/src/test/ui/vtable-res-trait-param.stderr b/src/test/ui/traits/vtable-res-trait-param.stderr
index c5fff622b6b..c5fff622b6b 100644
--- a/src/test/ui/vtable-res-trait-param.stderr
+++ b/src/test/ui/traits/vtable-res-trait-param.stderr
diff --git a/src/test/ui/tuple-index-fat-types.rs b/src/test/ui/tuple/tuple-index-fat-types.rs
index 5dda1ed975c..5dda1ed975c 100644
--- a/src/test/ui/tuple-index-fat-types.rs
+++ b/src/test/ui/tuple/tuple-index-fat-types.rs
diff --git a/src/test/ui/type-in-nested-module.rs b/src/test/ui/type-in-nested-module.rs
deleted file mode 100644
index 8a92f065f1b..00000000000
--- a/src/test/ui/type-in-nested-module.rs
+++ /dev/null
@@ -1,17 +0,0 @@
-// run-pass
-
-#![allow(non_camel_case_types)]
-#![allow(dead_code)]
-
-
-// pretty-expanded FIXME #23616
-
-mod a {
-    pub mod b {
-        pub type t = isize;
-
-        pub fn foo() { let _x: t = 10; }
-    }
-}
-
-pub fn main() { }
diff --git a/src/test/ui/prim-with-args.rs b/src/test/ui/typeck/prim-with-args.rs
index e5beaca6abb..e5beaca6abb 100644
--- a/src/test/ui/prim-with-args.rs
+++ b/src/test/ui/typeck/prim-with-args.rs
diff --git a/src/test/ui/prim-with-args.stderr b/src/test/ui/typeck/prim-with-args.stderr
index 4bde981e7f2..4bde981e7f2 100644
--- a/src/test/ui/prim-with-args.stderr
+++ b/src/test/ui/typeck/prim-with-args.stderr
diff --git a/src/test/ui/maybe-bounds-where-cpass.rs b/src/test/ui/unsized/maybe-bounds-where-cpass.rs
index d4bc05f7cb4..0e018cdabb2 100644
--- a/src/test/ui/maybe-bounds-where-cpass.rs
+++ b/src/test/ui/unsized/maybe-bounds-where-cpass.rs
@@ -1,4 +1,4 @@
-// build-pass (FIXME(62277): could be check-pass?)
+// check-pass
 
 struct S<T>(*const T) where T: ?Sized;
 
diff --git a/src/test/ui/use-crate-name-alias.rs b/src/test/ui/use-crate-name-alias.rs
deleted file mode 100644
index 0920d968585..00000000000
--- a/src/test/ui/use-crate-name-alias.rs
+++ /dev/null
@@ -1,7 +0,0 @@
-// run-pass
-// Issue #1706
-// pretty-expanded FIXME #23616
-
-extern crate std as stdlib;
-
-pub fn main() {}
diff --git a/src/test/ui/writealias.rs b/src/test/ui/writealias.rs
deleted file mode 100644
index 8ba4b09ae29..00000000000
--- a/src/test/ui/writealias.rs
+++ /dev/null
@@ -1,19 +0,0 @@
-// run-pass
-
-#![allow(dead_code)]
-
-use std::sync::Mutex;
-
-struct Point {x: isize, y: isize, z: isize}
-
-fn f(p: &mut Point) { p.z = 13; }
-
-pub fn main() {
-    let x = Some(Mutex::new(true));
-    match x {
-        Some(ref z) if *z.lock().unwrap() => {
-            assert!(*z.lock().unwrap());
-        },
-        _ => panic!()
-    }
-}
diff --git a/src/tools/tidy/src/ui_tests.rs b/src/tools/tidy/src/ui_tests.rs
index 88ede45655c..cc058d538f3 100644
--- a/src/tools/tidy/src/ui_tests.rs
+++ b/src/tools/tidy/src/ui_tests.rs
@@ -7,8 +7,9 @@ use std::path::Path;
 
 const ENTRY_LIMIT: usize = 1000;
 // FIXME: The following limits should be reduced eventually.
-const ROOT_ENTRY_LIMIT: usize = 1275;
+const ROOT_ENTRY_LIMIT: usize = 1102;
 const ISSUES_ENTRY_LIMIT: usize = 2310;
+const PARSER_LIMIT: usize = 1004;
 
 fn check_entries(path: &Path, bad: &mut bool) {
     let dirs = walkdir::WalkDir::new(&path.join("test/ui"))
@@ -21,10 +22,13 @@ fn check_entries(path: &Path, bad: &mut bool) {
             // Use special values for these dirs.
             let is_root = path.join("test/ui") == dir_path;
             let is_issues_dir = path.join("test/ui/issues") == dir_path;
+            let is_parser = path.join("test/ui/parser") == dir_path;
             let limit = if is_root {
                 ROOT_ENTRY_LIMIT
             } else if is_issues_dir {
                 ISSUES_ENTRY_LIMIT
+            } else if is_parser {
+                PARSER_LIMIT
             } else {
                 ENTRY_LIMIT
             };