rust-lang / rust

Empowering everyone to build reliable and efficient software.
https://www.rust-lang.org
Other
96.64k stars 12.49k forks source link

Move `compile-fail` tests to `ui` #44844

Closed estebank closed 6 years ago

estebank commented 6 years ago

There are some cases where compile-fail errors are still needed, as ui errors require the output to be exact and consistent across executions and platforms. That being said, the vast majority of errors can be safely moved.

The process is straightforward:

You don't need to move only one file at a time, but avoid trying to do all at once, as that will probably cause too many conflicts with PRs being merged precluding these changes from landing.

The following is a list of all files and directories (without checking wether they can be moved at this time, I will audit this list at a later time):

Click to expand - [ ] E0001.rs - [ ] E0004-2.rs - [ ] E0004.rs - [ ] E0005.rs - [ ] E0007.rs - [ ] E0008.rs - [ ] E0009.rs - [ ] E0010.rs - [ ] E0017.rs - [ ] E0023.rs - [ ] E0025.rs - [ ] E0026.rs - [ ] E0027.rs - [ ] E0029.rs - [ ] E0030.rs - [ ] E0033.rs - [ ] E0034.rs - [ ] E0038.rs - [ ] E0040.rs - [ ] E0044.rs - [ ] E0045.rs - [ ] E0049.rs - [ ] E0050.rs - [ ] E0054.rs - [ ] E0055.rs - [ ] E0057.rs - [ ] E0059.rs - [ ] E0060.rs - [ ] E0061.rs - [ ] E0062.rs - [ ] E0063.rs - [ ] E0067.rs - [ ] E0069.rs - [ ] E0070.rs - [ ] E0071.rs - [ ] E0075.rs - [ ] E0076.rs - [ ] E0077.rs - [ ] E0080.rs - [ ] E0081.rs - [ ] E0084.rs - [ ] E0087.rs - [ ] E0088.rs - [ ] E0089.rs - [ ] E0090.rs - [ ] E0091.rs - [ ] E0092.rs - [ ] E0093.rs - [ ] E0094.rs - [ ] E0106.rs - [ ] E0107.rs - [ ] E0109.rs - [ ] E0110.rs - [ ] E0116.rs - [ ] E0117.rs - [ ] E0118.rs - [ ] E0119.rs - [ ] E0120.rs - [ ] E0121.rs - [ ] E0124.rs - [ ] E0128.rs - [ ] E0130.rs - [ ] E0131.rs - [ ] E0132.rs - [ ] E0133.rs - [ ] E0137.rs - [ ] E0138.rs - [ ] E0152.rs - [ ] E0161.rs - [ ] E0162.rs - [ ] E0164.rs - [ ] E0165.rs - [ ] E0184.rs - [ ] E0185.rs - [ ] E0186.rs - [ ] E0191.rs - [ ] E0192.rs - [ ] E0194.rs - [ ] E0195.rs - [ ] E0197.rs - [ ] E0198.rs - [ ] E0199.rs - [ ] E0200.rs - [ ] E0201.rs - [ ] E0206.rs - [ ] E0207.rs - [ ] E0214.rs - [ ] E0220.rs - [ ] E0221.rs - [ ] E0223.rs - [ ] E0225.rs - [ ] E0229.rs - [ ] E0232.rs - [ ] E0243.rs - [ ] E0244.rs - [ ] E0252.rs - [ ] E0253.rs - [ ] E0254.rs - [ ] E0255.rs - [ ] E0259.rs - [ ] E0260.rs - [ ] E0261.rs - [ ] E0262.rs - [ ] E0263.rs - [ ] E0264.rs - [ ] E0267.rs - [ ] E0268.rs - [ ] E0271.rs - [ ] E0275.rs - [ ] E0276.rs - [ ] E0277-2.rs - [ ] E0277.rs - [ ] E0282.rs - [ ] E0283.rs - [ ] E0296.rs - [ ] E0297.rs - [ ] E0301.rs - [ ] E0302.rs - [ ] E0303.rs - [ ] E0308-2.rs - [ ] E0308-4.rs - [ ] E0308.rs - [ ] E0365.rs - [ ] E0370.rs - [ ] E0374.rs - [ ] E0375.rs - [ ] E0376.rs - [ ] E0388.rs - [ ] E0389.rs - [ ] E0390.rs - [ ] E0392.rs - [ ] E0393.rs - [ ] E0394.rs - [ ] E0395.rs - [ ] E0396.rs - [ ] E0401.rs - [ ] E0403.rs - [ ] E0404.rs - [ ] E0405.rs - [ ] E0407.rs - [ ] E0408.rs - [ ] E0411.rs - [ ] E0412.rs - [ ] E0415.rs - [ ] E0416.rs - [ ] E0423.rs - [ ] E0424.rs - [ ] E0425.rs - [ ] E0426.rs - [ ] E0428.rs - [ ] E0429.rs - [ ] E0430.rs - [ ] E0431.rs - [ ] E0432.rs - [ ] E0433.rs - [ ] E0434.rs - [ ] E0435.rs - [ ] E0437.rs - [ ] E0438.rs - [ ] E0439.rs - [ ] E0440.rs - [ ] E0441.rs - [ ] E0442.rs - [ ] E0443.rs - [ ] E0444.rs - [ ] E0445.rs - [ ] E0446.rs - [ ] E0449.rs - [ ] E0451.rs - [ ] E0452.rs - [ ] E0453.rs - [ ] E0454.rs - [ ] E0458.rs - [ ] E0459.rs - [ ] E0463.rs - [ ] E0478.rs - [ ] E0492.rs - [ ] E0494.rs - [ ] E0496.rs - [ ] E0499.rs - [ ] E0501.rs - [ ] E0502.rs - [ ] E0503.rs - [ ] E0504.rs - [ ] E0505.rs - [ ] E0506.rs - [ ] E0507.rs - [ ] E0508.rs - [ ] E0509.rs - [ ] E0511.rs - [ ] E0512.rs - [ ] E0516.rs - [ ] E0517.rs - [ ] E0518.rs - [ ] E0520.rs - [ ] E0522.rs - [ ] E0527.rs - [ ] E0528.rs - [ ] E0529.rs - [ ] E0530.rs - [ ] E0534.rs - [ ] E0558.rs - [ ] E0559.rs - [ ] E0560.rs - [ ] E0565-1.rs - [ ] E0565.rs - [ ] E0572.rs - [ ] E0580.rs - [ ] E0582.rs - [ ] E0583.rs - [ ] E0585.rs - [ ] E0586.rs - [ ] E0596.rs - [ ] E0597.rs - [ ] E0600.rs - [ ] E0602.rs - [ ] E0603.rs - [ ] E0604.rs - [ ] E0605.rs - [ ] E0606.rs - [ ] E0607.rs - [ ] E0608.rs - [ ] E0609.rs - [ ] E0610.rs - [ ] E0611.rs - [ ] E0612.rs - [ ] E0614.rs - [ ] E0615.rs - [ ] E0616.rs - [ ] E0617.rs - [ ] E0618.rs - [ ] E0619.rs - [ ] E0620.rs - [ ] E0621-does-not-trigger-for-closures.rs - [ ] E0622.rs - [ ] E0624.rs - [ ] E0637.rs - [ ] access-mode-in-closures.rs - [ ] allocator - [ ] anon-params-deprecated.rs - [ ] arg-count-mismatch.rs - [ ] arg-type-mismatch.rs - [ ] array-not-vector.rs - [ ] array_const_index-0.rs - [ ] array_const_index-1.rs - [ ] asm-bad-clobber.rs - [ ] asm-gated.rs - [ ] asm-gated2.rs - [ ] asm-in-bad-modifier.rs - [ ] asm-misplaced-option.rs - [ ] asm-out-assign-imm.rs - [ ] asm-out-no-modifier.rs - [ ] asm-out-read-uninit.rs - [ ] asm-src-loc-codegen-units.rs - [ ] asm-src-loc.rs - [ ] assign-imm-local-twice.rs - [ ] assign-to-method.rs - [ ] assignment-operator-unimplemented.rs - [ ] assoc-inherent.rs - [ ] associated-const-ambiguity-report.rs - [ ] associated-const-array-len.rs - [ ] associated-const-dead-code.rs - [ ] associated-const-generic-obligations.rs - [ ] associated-const-impl-wrong-lifetime.rs - [ ] associated-const-impl-wrong-type.rs - [ ] associated-const-no-item.rs - [ ] associated-const-private-impl.rs - [ ] associated-const-type-parameter-arms.rs - [ ] associated-const-type-parameter-arrays-2.rs - [ ] associated-const-type-parameter-arrays.rs - [ ] associated-const-upper-case-lint.rs - [ ] associated-item-duplicate-names-2.rs - [ ] associated-item-duplicate-names-3.rs - [ ] associated-item-duplicate-names.rs - [ ] associated-path-shl.rs - [ ] associated-type-projection-ambig-between-bound-and-where-clause.rs - [ ] associated-type-projection-from-multiple-supertraits.rs - [ ] associated-type-projection-from-supertrait.rs - [ ] associated-types - [ ] associated-types-ICE-when-projecting-out-of-err.rs - [ ] associated-types-binding-to-type-defined-in-supertrait.rs - [ ] associated-types-bound-failure.rs - [ ] associated-types-coherence-failure.rs - [ ] associated-types-eq-1.rs - [ ] associated-types-eq-2.rs - [ ] associated-types-eq-3.rs - [ ] associated-types-eq-expr-path.rs - [ ] associated-types-eq-hr.rs - [ ] associated-types-for-unimpl-trait.rs - [ ] associated-types-in-ambiguous-context.rs - [ ] associated-types-incomplete-object.rs - [ ] associated-types-invalid-trait-ref-issue-18865.rs - [ ] associated-types-issue-17359.rs - [ ] associated-types-issue-20346.rs - [ ] associated-types-multiple-types-one-trait.rs - [ ] associated-types-no-suitable-bound.rs - [ ] associated-types-no-suitable-supertrait-2.rs - [ ] associated-types-no-suitable-supertrait.rs - [ ] associated-types-outlives.rs - [ ] associated-types-overridden-default.rs - [ ] associated-types-path-1.rs - [ ] associated-types-path-2.rs - [ ] associated-types-project-from-hrtb-in-fn-body.rs - [ ] associated-types-project-from-hrtb-in-fn.rs - [ ] associated-types-project-from-hrtb-in-struct.rs - [ ] associated-types-project-from-hrtb-in-trait-method.rs - [ ] associated-types-projection-to-unrelated-trait-in-method-without-default.rs - [ ] associated-types-subtyping-1.rs - [ ] associated-types-unconstrained.rs - [ ] associated-types-unsized.rs - [ ] attempted-access-non-fatal.rs - [ ] attr-bad-crate-attr.rc - [ ] attr-literals.rs - [ ] attr-on-generic-formals-are-visited.rs - [ ] attr-on-generic-formals-wo-feature-gate.rs - [ ] attr-usage-inline.rs - [ ] attr-usage-repr.rs - [ ] attrs-with-no-formal-in-generics-1.rs - [ ] attrs-with-no-formal-in-generics-2.rs - [ ] attrs-with-no-formal-in-generics-3.rs - [ ] augmented-assignments.rs - [ ] auto-ref-slice-plus-ref.rs - [ ] autoderef-full-lval.rs - [ ] bad-const-type.rs - [ ] bad-env-capture.rs - [ ] bad-env-capture2.rs - [ ] bad-env-capture3.rs - [ ] bad-expr-lhs.rs - [ ] bad-expr-path.rs - [ ] bad-expr-path2.rs - [ ] bad-extern-link-attrs.rs - [ ] bad-intrinsic-monomorphization.rs - [ ] bad-lint-cap.rs - [ ] bad-lint-cap2.rs - [ ] bad-lint-cap3.rs - [ ] bad-main.rs - [ ] bad-method-typaram-kind.rs - [ ] bad-mid-path-type-params.rs - [ ] bad-module.rs - [ ] bad-sized.rs - [ ] bad-type-env-capture.rs - [ ] binary-op-on-double-ref.rs - [ ] bind-by-move-neither-can-live-while-the-other-survives-2.rs - [ ] bind-by-move-neither-can-live-while-the-other-survives-3.rs - [ ] bind-by-move-neither-can-live-while-the-other-survives-4.rs - [ ] bind-by-move-no-guards.rs - [ ] binop-bitxor-str.rs - [ ] binop-consume-args.rs - [ ] binop-logic-float.rs - [ ] binop-logic-int.rs - [ ] binop-move-semantics.rs - [ ] binop-mul-bool.rs - [ ] binop-typeck.rs - [ ] blind-item-block-item-shadow.rs - [ ] blind-item-block-middle.rs - [ ] blind-item-item-shadow.rs - [ ] bogus-tag.rs - [ ] borrow-immutable-upvar-mutation.rs - [ ] borrow-tuple-fields.rs - [ ] borrowck - [ ] break-outside-loop.rs - [ ] builtin-superkinds-double-superkind.rs - [ ] builtin-superkinds-in-metadata.rs - [ ] builtin-superkinds-self-type.rs - [ ] builtin-superkinds-simple.rs - [ ] builtin-superkinds-typaram-not-send.rs - [ ] by-move-pattern-binding.rs - [ ] call-fn-never-arg-wrong-type.rs - [ ] can-begin-expr-check.rs - [ ] cannot-mutate-captured-non-mut-var.rs - [ ] capture1.rs - [ ] cast-as-bool.rs - [ ] cast-from-nil.rs - [ ] cast-ptr-to-int-const.rs - [ ] cast-rfc0401-2.rs - [ ] cast-to-bare-fn.rs - [ ] cast-to-nil.rs - [ ] catch-bad-lifetime.rs - [ ] catch-bad-type.rs - [ ] catch-in-match.rs - [ ] catch-in-while.rs - [ ] catch-maybe-bad-lifetime.rs - [ ] catch-opt-init.rs - [ ] cdylib-deps-must-be-static.rs - [ ] cfg-arg-invalid.rs - [ ] cfg-attr-cfg-2.rs - [ ] cfg-attr-crate-2.rs - [ ] cfg-attr-invalid-predicate.rs - [ ] cfg-attr-unknown-attribute-macro-expansion.rs - [ ] cfg-empty-codemap.rs - [ ] cfg-in-crate-1.rs - [ ] cfg-non-opt-expr.rs - [ ] cfg_attr_path.rs - [ ] changing-crates.rs - [ ] check-static-immutable-mut-slices.rs - [ ] check-static-values-constraints.rs - [ ] class-cast-to-trait.rs - [ ] class-method-missing.rs - [ ] class-missing-self.rs - [ ] cleanup-rvalue-scopes-cf.rs - [ ] closure-bounds-cant-promote-superkind-in-struct.rs - [ ] closure-bounds-static-cant-capture-borrowed.rs - [ ] closure-bounds-subtype.rs - [ ] closure-no-fn-1.rs - [ ] closure-no-fn-2.rs - [ ] closure-no-fn-3.rs - [ ] closure-referencing-itself-issue-25954.rs - [ ] closure-reform-bad.rs - [ ] closure-wrong-kind.rs - [ ] coerce-expect-unsized-ascribed.rs - [ ] coerce-mut.rs - [ ] coerce-overloaded-autoderef.rs - [ ] coerce-to-bang-cast.rs - [ ] coerce-to-bang.rs - [ ] coerce-unsafe-to-closure.rs - [ ] coercion-slice.rs - [ ] coherence-all-remote.rs - [ ] coherence-bigint-param.rs - [ ] coherence-blanket-conflicts-with-blanket-implemented.rs - [ ] coherence-blanket-conflicts-with-blanket-unimplemented.rs - [ ] coherence-blanket-conflicts-with-specific-cross-crate.rs - [ ] coherence-blanket-conflicts-with-specific-multidispatch.rs - [ ] coherence-blanket-conflicts-with-specific-trait.rs - [ ] coherence-blanket-conflicts-with-specific.rs - [ ] coherence-conflicting-negative-trait-impl.rs - [ ] coherence-cow.rs - [ ] coherence-cross-crate-conflict.rs - [ ] coherence-default-trait-impl.rs - [ ] coherence-error-suppression.rs - [ ] coherence-impl-trait-for-trait-object-safe.rs - [ ] coherence-impl-trait-for-trait.rs - [ ] coherence-impls-copy.rs - [ ] coherence-impls-send.rs - [ ] coherence-impls-sized.rs - [ ] coherence-inherited-assoc-ty-cycle-err.rs - [ ] coherence-lone-type-parameter.rs - [ ] coherence-negative-impls-safe.rs - [ ] coherence-no-direct-lifetime-dispatch.rs - [ ] coherence-orphan.rs - [ ] coherence-overlap-all-t-and-tuple.rs - [ ] coherence-overlap-downstream-inherent.rs - [ ] coherence-overlap-downstream.rs - [ ] coherence-overlap-issue-23516-inherent.rs - [ ] coherence-overlap-issue-23516.rs - [ ] coherence-overlap-messages.rs - [ ] coherence-overlap-upstream-inherent.rs - [ ] coherence-overlap-upstream.rs - [ ] coherence-overlapping-pairs.rs - [ ] coherence-pair-covered-uncovered-1.rs - [ ] coherence-pair-covered-uncovered.rs - [ ] coherence-projection-conflict-orphan.rs - [ ] coherence-projection-conflict-ty-param.rs - [ ] coherence-projection-conflict.rs - [ ] coherence-projection-ok-orphan.rs - [ ] coherence-projection-ok.rs - [ ] coherence-tuple-conflict.rs - [ ] coherence-vec-local-2.rs - [ ] coherence-vec-local.rs - [ ] coherence_copy_like_err_fundamental_struct.rs - [ ] coherence_copy_like_err_fundamental_struct_ref.rs - [ ] coherence_copy_like_err_fundamental_struct_tuple.rs - [ ] coherence_copy_like_err_struct.rs - [ ] coherence_copy_like_err_tuple.rs - [ ] coherence_inherent.rs - [ ] coherence_inherent_cc.rs - [ ] coherence_local.rs - [ ] coherence_local_err_struct.rs - [ ] coherence_local_err_tuple.rs - [ ] coherence_local_ref.rs - [ ] compile_error_macro.rs - [ ] concat.rs - [ ] concat_idents-gate.rs - [ ] concat_idents-gate2.rs - [ ] conflicting-repr-hints.rs - [ ] const-array-oob-arith.rs - [ ] const-array-oob.rs - [ ] const-block-non-item-statement-2.rs - [ ] const-block-non-item-statement-3.rs - [ ] const-block-non-item-statement.rs - [ ] const-call.rs - [ ] const-cast-different-types.rs - [ ] const-cast-wrong-type.rs - [ ] const-deref-ptr.rs - [ ] const-err-early.rs - [ ] const-err-multi.rs - [ ] const-err.rs - [ ] const-err2.rs - [ ] const-eval-overflow-2.rs - [ ] const-eval-overflow-3.rs - [ ] const-eval-overflow-3b.rs - [ ] const-eval-overflow-4.rs - [ ] const-eval-overflow-4b.rs - [ ] const-eval-overflow.rs - [ ] const-eval-span.rs - [ ] const-fn-destructuring-arg.rs - [ ] const-fn-error.rs - [ ] const-fn-feature-flags.rs - [ ] const-fn-mismatch.rs - [ ] const-fn-not-in-trait.rs - [ ] const-fn-not-safe-for-const.rs - [ ] const-fn-stability-calls-3.rs - [ ] const-fn-stability.rs - [ ] const-index-feature-gate.rs - [ ] const-integer-bool-ops.rs - [ ] const-len-underflow-separate-spans.rs - [ ] const-len-underflow-subspans.rs - [ ] const-match-pattern-arm.rs - [ ] const-pattern-irrefutable.rs - [ ] const-pattern-not-const-evaluable.rs - [ ] const-recursive.rs - [ ] const-size_of-cycle.rs - [ ] const-slice-oob.rs - [ ] const-tup-index-span.rs - [ ] const-unsized.rs - [ ] constructor-lifetime-args.rs - [ ] copy-a-resource.rs - [ ] crate-name-mismatch.rs - [ ] crateresolve1.rs - [ ] cross-borrow-trait.rs - [ ] cross-fn-cache-hole.rs - [ ] custom_attribute.rs - [ ] cycle-projection-based-on-where-clause.rs - [ ] cycle-trait-default-type-trait.rs - [ ] cycle-trait-supertrait-direct.rs - [ ] cycle-trait-supertrait-indirect.rs - [ ] dead-code-closure-bang.rs - [ ] dead-code-ret.rs - [ ] defaulted-unit-warning.rs - [ ] dep-graph-assoc-type-trans.rs - [ ] dep-graph-caller-callee.rs - [ ] dep-graph-struct-signature.rs - [ ] dep-graph-trait-impl-two-traits-same-method.rs - [ ] dep-graph-trait-impl-two-traits.rs - [ ] dep-graph-trait-impl.rs - [ ] dep-graph-type-alias.rs - [ ] dep-graph-variance-alias.rs - [ ] dep_graph_crosscontaminate_tables.rs - [ ] deprecated_no_stack_check.rs - [ ] deprecation-in-staged-api.rs - [ ] deprecation-lint-2.rs - [ ] deprecation-lint-3.rs - [ ] deprecation-lint-nested.rs - [ ] deprecation-lint.rs - [ ] deprecation-sanity.rs - [ ] deref-non-pointer.rs - [ ] derive-assoc-type-not-impl.rs - [ ] derived-errors - [ ] derives-span-Clone-enum-struct-variant.rs - [ ] derives-span-Clone-enum.rs - [ ] derives-span-Clone-struct.rs - [ ] derives-span-Clone-tuple-struct.rs - [ ] derives-span-Debug-enum-struct-variant.rs - [ ] derives-span-Debug-enum.rs - [ ] derives-span-Debug-struct.rs - [ ] derives-span-Debug-tuple-struct.rs - [ ] derives-span-Default-struct.rs - [ ] derives-span-Default-tuple-struct.rs - [ ] derives-span-Eq-enum-struct-variant.rs - [ ] derives-span-Eq-enum.rs - [ ] derives-span-Eq-struct.rs - [ ] derives-span-Eq-tuple-struct.rs - [ ] derives-span-Hash-enum-struct-variant.rs - [ ] derives-span-Hash-enum.rs - [ ] derives-span-Hash-struct.rs - [ ] derives-span-Hash-tuple-struct.rs - [ ] derives-span-Ord-enum-struct-variant.rs - [ ] derives-span-Ord-enum.rs - [ ] derives-span-Ord-struct.rs - [ ] derives-span-Ord-tuple-struct.rs - [ ] derives-span-PartialEq-enum-struct-variant.rs - [ ] derives-span-PartialEq-enum.rs - [ ] derives-span-PartialEq-struct.rs - [ ] derives-span-PartialEq-tuple-struct.rs - [ ] derives-span-PartialOrd-enum-struct-variant.rs - [ ] derives-span-PartialOrd-enum.rs - [ ] derives-span-PartialOrd-struct.rs - [ ] derives-span-PartialOrd-tuple-struct.rs - [ ] deriving-bounds.rs - [ ] deriving-copyclone.rs - [ ] deriving-meta-unknown-trait.rs - [ ] deriving-no-inner-impl-error-message.rs - [ ] deriving-non-type.rs - [ ] deriving-primitive.rs - [ ] destructure-trait-ref.rs - [ ] directory_ownership - [ ] disallowed-deconstructing-destructing-struct-let.rs - [ ] disallowed-deconstructing-destructing-struct-match.rs - [ ] discrim-ill-typed.rs - [ ] discrim-overflow-2.rs - [ ] discrim-overflow.rs - [ ] diverging-fn-tail-35849.rs - [ ] diverging-tuple-parts-39485.rs - [ ] does-nothing.rs - [ ] dollar-crate-is-keyword-2.rs - [ ] dollar-crate-is-keyword.rs - [ ] double-import.rs - [ ] double-type-import.rs - [ ] drop-on-non-struct.rs - [ ] drop-with-active-borrows-1.rs - [ ] drop-with-active-borrows-2.rs - [ ] dropck_no_diverge_on_nonregular_1.rs - [ ] dropck_no_diverge_on_nonregular_2.rs - [ ] dropck_no_diverge_on_nonregular_3.rs - [ ] dropck_trait_cycle_checked.rs - [ ] dst-bad-assign-2.rs - [ ] dst-bad-assign-3.rs - [ ] dst-bad-assign.rs - [ ] dst-bad-coerce1.rs - [ ] dst-bad-coerce2.rs - [ ] dst-bad-coerce3.rs - [ ] dst-bad-coerce4.rs - [ ] dst-bad-coercions.rs - [ ] dst-bad-deep-2.rs - [ ] dst-bad-deep.rs - [ ] dst-index.rs - [ ] dst-object-from-unsized-type.rs - [ ] dst-rvalue.rs - [ ] dst-sized-trait-param.rs - [ ] dupe-symbols-1.rs - [ ] dupe-symbols-2.rs - [ ] dupe-symbols-3.rs - [ ] dupe-symbols-4.rs - [ ] dupe-symbols-5.rs - [ ] dupe-symbols-6.rs - [ ] dupe-symbols-7.rs - [ ] duplicate-check-macro-exports.rs - [ ] duplicate-parameter.rs - [ ] duplicate-type-parameter.rs - [ ] duplicate_entry_error.rs - [ ] elided-test.rs - [ ] empty-comment.rs - [ ] empty-extern-arg.rs - [ ] empty-linkname.rs - [ ] empty-macro-use.rs - [ ] empty-struct-braces-expr.rs - [ ] empty-struct-braces-pat-1.rs - [ ] empty-struct-braces-pat-2.rs - [ ] empty-struct-braces-pat-3.rs - [ ] empty-struct-tuple-pat.rs - [ ] empty-struct-unit-expr.rs - [ ] empty-struct-unit-pat.rs - [ ] enable-unstable-lib-feature.rs - [ ] enum-and-module-in-same-scope.rs - [ ] enum-discrim-autosizing.rs - [ ] enum-discrim-too-small.rs - [ ] enum-discrim-too-small2.rs - [ ] enum-in-scope.rs - [ ] enum-to-float-cast-2.rs - [ ] enum-to-float-cast.rs - [ ] enum-variant-type-2.rs - [ ] enums-pats-not-idents.rs - [ ] error-should-say-copy-not-pod.rs - [ ] estr-subtyping.rs - [ ] eval-enum.rs - [ ] exclusive-drop-and-copy.rs - [ ] exclusive_range_pattern_syntax_collision.rs - [ ] exclusive_range_pattern_syntax_collision2.rs - [ ] exclusive_range_pattern_syntax_collision3.rs - [ ] expanded-cfg.rs - [ ] explicit-call-to-dtor.rs - [ ] explicit-call-to-supertrait-dtor.rs - [ ] explicit-self-lifetime-mismatch.rs - [ ] export-fully-qualified.rs - [ ] export-import.rs - [ ] export-tag-variant.rs - [ ] export.rs - [ ] export2.rs - [ ] expr_attr_paren_order.rs - [ ] ext-nonexistent.rs - [ ] extenv-arg-2-not-string-literal.rs - [ ] extenv-no-args.rs - [ ] extenv-not-defined-custom.rs - [ ] extenv-not-defined-default.rs - [ ] extenv-not-string-literal.rs - [ ] extenv-too-many-args.rs - [ ] extern-crate-visibility.rs - [ ] extern-main-fn.rs - [ ] extern-with-type-bounds.rs - [ ] extern-wrong-value-type.rs - [ ] extoption_env-no-args.rs - [ ] extoption_env-not-string-literal.rs - [ ] extoption_env-too-many-args.rs - [ ] fail-no-dead-code-core.rs - [ ] fail-no-dead-code.rs - [ ] fail-simple.rs - [ ] fat-ptr-cast.rs - [ ] feature-gate - [ ] feature-gate-abi-msp430-interrupt.rs - [ ] feature-gate-abi-sysv64.rs - [ ] feature-gate-abi.rs - [ ] feature-gate-advanced-slice-features.rs - [ ] feature-gate-allocator_internals.rs - [ ] feature-gate-allow-internal-unsafe-nested-macro.rs - [ ] feature-gate-allow-internal-unstable-nested-macro.rs - [ ] feature-gate-allow-internal-unstable-struct.rs - [ ] feature-gate-allow-internal-unstable.rs - [ ] feature-gate-allow_fail.rs - [ ] feature-gate-assoc-type-defaults.rs - [ ] feature-gate-box-expr.rs - [ ] feature-gate-box-pat.rs - [ ] feature-gate-catch_expr.rs - [ ] feature-gate-cfg-target-feature.rs - [ ] feature-gate-cfg-target-has-atomic.rs - [ ] feature-gate-cfg-target-thread-local.rs - [ ] feature-gate-cfg-target-vendor.rs - [ ] feature-gate-clone-closures.rs - [ ] feature-gate-compiler-builtins.rs - [ ] feature-gate-const-indexing.rs - [ ] feature-gate-copy-closures.rs - [ ] feature-gate-decl_macro.rs - [ ] feature-gate-doc_cfg.rs - [ ] feature-gate-doc_masked.rs - [ ] feature-gate-dropck-ugeh-2.rs - [ ] feature-gate-dropck-ugeh.rs - [ ] feature-gate-exclusive-range-pattern.rs - [ ] feature-gate-feature-gate.rs - [ ] feature-gate-fn_must_use-cap-lints-allow.rs - [ ] feature-gate-fn_must_use.rs - [ ] feature-gate-fundamental.rs - [ ] feature-gate-generators.rs - [ ] feature-gate-global_allocator.rs - [ ] feature-gate-global_asm.rs - [ ] feature-gate-intrinsics.rs - [ ] feature-gate-lang-items.rs - [ ] feature-gate-linker-flavor.rs - [ ] feature-gate-macro-vis-matcher.rs - [ ] feature-gate-main.rs - [ ] feature-gate-match_beginning_vert.rs - [ ] feature-gate-may-dangle.rs - [ ] feature-gate-needs-allocator.rs - [ ] feature-gate-negate-unsigned.rs - [ ] feature-gate-no-debug-2.rs - [ ] feature-gate-no-debug.rs - [ ] feature-gate-omit-gdb-pretty-printer-section.rs - [ ] feature-gate-on-unimplemented.rs - [ ] feature-gate-optin-builtin-traits.rs - [ ] feature-gate-overlapping_marker_traits.rs - [ ] feature-gate-placement-expr.rs - [ ] feature-gate-plugin.rs - [ ] feature-gate-prelude_import.rs - [ ] feature-gate-profiler-runtime.rs - [ ] feature-gate-repr-simd.rs - [ ] feature-gate-repr128.rs - [ ] feature-gate-repr_align.rs - [ ] feature-gate-rustc-attrs.rs - [ ] feature-gate-rustc-diagnostic-macros.rs - [ ] feature-gate-rustc_const_unstable.rs - [ ] feature-gate-sanitizer-runtime.rs - [ ] feature-gate-simd-ffi.rs - [ ] feature-gate-simd.rs - [ ] feature-gate-slice-patterns.rs - [ ] feature-gate-staged_api.rs - [ ] feature-gate-start.rs - [ ] feature-gate-static-nobundle.rs - [ ] feature-gate-stmt_expr_attributes.rs - [ ] feature-gate-unboxed-closures-manual-impls.rs - [ ] feature-gate-unboxed-closures-method-calls.rs - [ ] feature-gate-unboxed-closures-ufcs-calls.rs - [ ] feature-gate-unboxed-closures.rs - [ ] feature-gate-underscore-lifetimes.rs - [ ] feature-gate-unsized_tuple_coercion.rs - [ ] feature-gate-unwind-attributes.rs - [ ] feature-gate-used.rs - [ ] feature-gated-feature-in-macro-arg.rs - [ ] float-literal-inference-restrictions.rs - [ ] fn-bad-block-type.rs - [ ] fn-compare-mismatch.rs - [ ] fn-item-type.rs - [ ] fn-trait-formatting.rs - [ ] for-expn.rs - [ ] for-loop-bogosity.rs - [ ] for-loop-hygiene.rs - [ ] for-loop-refutable-pattern-error-message.rs - [ ] for-loop-type-error.rs - [ ] for-loop-unconstrained-element-type.rs - [ ] foreign-fn-return-lifetime.rs - [ ] foreign-unsafe-fn-called.rs - [ ] forget-init-unsafe.rs - [ ] fully-qualified-type-name1.rs - [ ] fully-qualified-type-name2.rs - [ ] fully-qualified-type-name3.rs - [ ] fully-qualified-type-name4.rs - [ ] functional-struct-update-noncopyable.rs - [ ] functional-struct-update-respects-privacy.rs - [ ] future-incompatible-lint-group.rs - [ ] gated-attr-literals.rs - [ ] gated-bad-feature.rs - [ ] gated-box-syntax.rs - [ ] gated-concat_idents.rs - [ ] gated-link-args.rs - [ ] gated-link-llvm-intrinsics.rs - [ ] gated-naked_functions.rs - [ ] gated-no-core.rs - [ ] gated-non-ascii-idents.rs - [ ] gated-plugin_registrar.rs - [ ] gated-target_feature.rs - [ ] gated-thread-local.rs - [ ] gated-trace_macros.rs - [ ] generic-extern-lifetime.rs - [ ] generic-extern.rs - [ ] generic-impl-less-params-with-defaults.rs - [ ] generic-impl-more-params-with-defaults.rs - [ ] generic-lifetime-trait-impl.rs - [ ] generic-no-mangle.rs - [ ] generic-non-trailing-defaults.rs - [ ] generic-type-less-params-with-defaults.rs - [ ] generic-type-more-params-with-defaults.rs - [ ] generic-type-params-forward-mention.rs - [ ] generic-type-params-name-repr.rs - [ ] glob-cycles.rs - [ ] glob-resolve1.rs - [ ] hashmap-iter-value-lifetime.rs - [ ] hashmap-lifetimes.rs - [ ] hidden-rt-injection.rs - [ ] hidden-rt-injection2.rs - [ ] hr-subtype.rs - [ ] hrtb-conflate-regions.rs - [ ] hrtb-debruijn-in-receiver.rs - [ ] hrtb-higher-ranker-supertraits-transitive.rs - [ ] hrtb-higher-ranker-supertraits.rs - [ ] hrtb-identity-fn-borrows.rs - [ ] hrtb-just-for-static.rs - [ ] hrtb-perfect-forwarding.rs - [ ] huge-array-simple.rs - [ ] huge-array.rs - [ ] huge-enum.rs - [ ] huge-struct.rs - [ ] hygiene - [ ] hygienic-label-1.rs - [ ] hygienic-label-2.rs - [ ] hygienic-label-3.rs - [ ] hygienic-label-4.rs - [ ] i128-feature-2.rs - [ ] i128-feature-libs.rs - [ ] i128-feature.rs - [ ] if-branch-types.rs - [ ] if-let-arm-types.rs - [ ] if-let.rs - [ ] if-loop.rs - [ ] if-typeck.rs - [ ] if-without-else-result.rs - [ ] ifmt-bad-arg.rs - [ ] ifmt-bad-format-args.rs - [ ] ifmt-unimpl.rs - [ ] ifmt-unknown-trait.rs - [ ] illegal-ufcs-drop.rs - [ ] immut-function-arguments.rs - [ ] impl-bounds-checking.rs - [ ] impl-duplicate-methods.rs - [ ] impl-trait - [ ] impl-unused-rps-in-assoc-type.rs - [ ] impl-unused-tps-inherent.rs - [ ] impl-unused-tps.rs - [ ] implicit-method-bind.rs - [ ] import-crate-var.rs - [ ] import-from-missing.rs - [ ] import-glob-0.rs - [ ] import-glob-circular.rs - [ ] import-loop-2.rs - [ ] import-loop.rs - [ ] import-prefix-macro-1.rs - [ ] import-prefix-macro-2.rs - [ ] import-trait-method.rs - [ ] import.rs - [ ] import2.rs - [ ] import3.rs - [ ] import4.rs - [ ] imports - [ ] impossible_range.rs - [ ] inaccessible-test-modules.rs - [ ] incr_comp_with_macro_export.rs - [ ] index-bot.rs - [ ] index_message.rs - [ ] indexing-requires-a-uint.rs - [ ] infinite-autoderef.rs - [ ] infinite-instantiation.rs - [ ] infinite-macro-expansion.rs - [ ] infinite-tag-type-recursion.rs - [ ] infinite-vec-type-recursion.rs - [ ] inhabitedness-infinite-loop.rs - [ ] inner-static-type-parameter.rs - [ ] integer-literal-suffix-inference.rs - [ ] integral-indexing.rs - [ ] integral-variable-unification-error.rs - [ ] internal-unstable-noallow.rs - [ ] internal-unstable-thread-local.rs - [ ] internal-unstable.rs - [ ] intrinsic-invalid-number-of-arguments.rs - [ ] invalid-crate-type.rs - [ ] invalid-inline.rs - [ ] invalid-macro-matcher.rs - [ ] invalid-path-in-const.rs - [ ] invalid-plugin-attr.rs - [ ] invalid_crate_type_syntax.rs - [ ] isssue-38821.rs - [ ] issue-10176.rs - [ ] issue-10200.rs - [ ] issue-10291.rs - [ ] issue-10398.rs - [ ] issue-10401.rs - [ ] issue-10465.rs - [ ] issue-10536.rs - [ ] issue-10545.rs - [ ] issue-10656.rs - [ ] issue-10755.rs - [ ] issue-10764.rs - [ ] issue-10877.rs - [ ] issue-10969.rs - [ ] issue-10991.rs - [ ] issue-11004.rs - [ ] issue-11154.rs - [ ] issue-11192.rs - [ ] issue-11319.rs - [ ] issue-11374.rs - [ ] issue-11493.rs - [ ] issue-11515.rs - [ ] issue-11593.rs - [ ] issue-11680.rs - [ ] issue-11681.rs - [ ] issue-11692-1.rs - [ ] issue-11692-2.rs - [ ] issue-11740.rs - [ ] issue-11771.rs - [ ] issue-11844.rs - [ ] issue-11873.rs - [ ] issue-12028.rs - [ ] issue-12041.rs - [ ] issue-12116.rs - [ ] issue-12127.rs - [ ] issue-12187-1.rs - [ ] issue-12187-2.rs - [ ] issue-12369.rs - [ ] issue-12470.rs - [ ] issue-12511.rs - [ ] issue-12552.rs - [ ] issue-12567.rs - [ ] issue-12796.rs - [ ] issue-12863.rs - [ ] issue-12997-1.rs - [ ] issue-12997-2.rs - [ ] issue-13033.rs - [ ] issue-13058.rs - [ ] issue-13352.rs - [ ] issue-13359.rs - [ ] issue-13404.rs - [ ] issue-13407.rs - [ ] issue-13446.rs - [ ] issue-13466.rs - [ ] issue-13482-2.rs - [ ] issue-13482.rs - [ ] issue-13497-2.rs - [ ] issue-13497.rs - [ ] issue-1362.rs - [ ] issue-13641.rs - [ ] issue-13727.rs - [ ] issue-13847.rs - [ ] issue-13853-2.rs - [ ] issue-13853-5.rs - [ ] issue-13853.rs - [ ] issue-14084.rs - [ ] issue-14091-2.rs - [ ] issue-14091.rs - [ ] issue-14092.rs - [ ] issue-14221.rs - [ ] issue-14227.rs - [ ] issue-14285.rs - [ ] issue-14309.rs - [ ] issue-14366.rs - [ ] issue-1448-2.rs - [ ] issue-14541.rs - [ ] issue-14721.rs - [ ] issue-1476.rs - [ ] issue-14772.rs - [ ] issue-14845.rs - [ ] issue-14853.rs - [ ] issue-14915.rs - [ ] issue-15034.rs - [ ] issue-15094.rs - [ ] issue-15129.rs - [ ] issue-15167.rs - [ ] issue-15207.rs - [ ] issue-15260.rs - [ ] issue-15381.rs - [ ] issue-15524.rs - [ ] issue-15756.rs - [ ] issue-15783.rs - [ ] issue-15896.rs - [ ] issue-15919.rs - [ ] issue-15965.rs - [ ] issue-16048.rs - [ ] issue-16098.rs - [ ] issue-16149.rs - [ ] issue-16250.rs - [ ] issue-16338.rs - [ ] issue-16401.rs - [ ] issue-16538.rs - [ ] issue-16562.rs - [ ] issue-16683.rs - [ ] issue-16725.rs - [ ] issue-16747.rs - [ ] issue-16922.rs - [ ] issue-16939.rs - [ ] issue-16966.rs - [ ] issue-1697.rs - [ ] issue-16994.rs - [ ] issue-17001.rs - [ ] issue-17025.rs - [ ] issue-17033.rs - [ ] issue-17252.rs - [ ] issue-17263.rs - [ ] issue-17337.rs - [ ] issue-17373.rs - [ ] issue-17385.rs - [ ] issue-17405.rs - [ ] issue-17431-1.rs - [ ] issue-17431-2.rs - [ ] issue-17431-3.rs - [ ] issue-17431-4.rs - [ ] issue-17431-5.rs - [ ] issue-17431-6.rs - [ ] issue-17431-7.rs - [ ] issue-17441.rs - [ ] issue-17444.rs - [ ] issue-17450.rs - [ ] issue-17458.rs - [ ] issue-17545.rs - [ ] issue-17546.rs - [ ] issue-17551.rs - [ ] issue-17651.rs - [ ] issue-17718-borrow-interior.rs - [ ] issue-17718-const-bad-values.rs - [ ] issue-17718-const-borrow.rs - [ ] issue-17718-const-naming.rs - [ ] issue-17718-const-privacy.rs - [ ] issue-17718-constants-not-static.rs - [ ] issue-17718-patterns.rs - [ ] issue-17718-recursive.rs - [ ] issue-17718-references.rs - [ ] issue-17718-static-move.rs - [ ] issue-17718-static-sync.rs - [ ] issue-17728.rs - [ ] issue-17740.rs - [ ] issue-17758.rs - [ ] issue-17800.rs - [ ] issue-17904-2.rs - [ ] issue-17905.rs - [ ] issue-17913.rs - [ ] issue-17933.rs - [ ] issue-17954.rs - [ ] issue-17959.rs - [ ] issue-17994.rs - [ ] issue-17999.rs - [ ] issue-18058.rs - [ ] issue-18107.rs - [ ] issue-18118-2.rs - [ ] issue-18118.rs - [ ] issue-18119.rs - [ ] issue-18159.rs - [ ] issue-18183.rs - [ ] issue-18294.rs - [ ] issue-18389.rs - [ ] issue-18400.rs - [ ] issue-18423.rs - [ ] issue-18446.rs - [ ] issue-18532.rs - [ ] issue-18566.rs - [ ] issue-18611.rs - [ ] issue-1871.rs - [ ] issue-18783.rs - [ ] issue-18819.rs - [ ] issue-18919.rs - [ ] issue-18937.rs - [ ] issue-18959.rs - [ ] issue-1900.rs - [ ] issue-19086.rs - [ ] issue-19163.rs - [ ] issue-1920-1.rs - [ ] issue-1920-2.rs - [ ] issue-1920-3.rs - [ ] issue-19244-1.rs - [ ] issue-19244-2.rs - [ ] issue-19380.rs - [ ] issue-19482.rs - [ ] issue-19498.rs - [ ] issue-19521.rs - [ ] issue-19538.rs - [ ] issue-19601.rs - [ ] issue-1962.rs - [ ] issue-19660.rs - [ ] issue-19692.rs - [ ] issue-19707.rs - [ ] issue-19734.rs - [ ] issue-19883.rs - [ ] issue-19922.rs - [ ] issue-19982.rs - [ ] issue-19991.rs - [ ] issue-20005.rs - [ ] issue-20162.rs - [ ] issue-20225.rs - [ ] issue-20261.rs - [ ] issue-20313.rs - [ ] issue-20413.rs - [ ] issue-20433.rs - [ ] issue-20605.rs - [ ] issue-20616-1.rs - [ ] issue-20616-2.rs - [ ] issue-20616-3.rs - [ ] issue-20616-4.rs - [ ] issue-20616-5.rs - [ ] issue-20616-6.rs - [ ] issue-20616-7.rs - [ ] issue-20616-8.rs - [ ] issue-20616-9.rs - [ ] issue-20692.rs - [ ] issue-20714.rs - [ ] issue-20772.rs - [ ] issue-20801.rs - [ ] issue-20825.rs - [ ] issue-20831-debruijn.rs - [ ] issue-20939.rs - [ ] issue-21045.rs - [ ] issue-2111.rs - [ ] issue-21146.rs - [ ] issue-21160.rs - [ ] issue-21174.rs - [ ] issue-21177.rs - [ ] issue-21202.rs - [ ] issue-21332.rs - [ ] issue-21356.rs - [ ] issue-21449.rs - [ ] issue-2149.rs - [ ] issue-2150.rs - [ ] issue-2151.rs - [ ] issue-21546.rs - [ ] issue-21554.rs - [ ] issue-21600.rs - [ ] issue-21701.rs - [ ] issue-21763.rs - [ ] issue-21837.rs - [ ] issue-21946.rs - [ ] issue-21950.rs - [ ] issue-21974.rs - [ ] issue-22034.rs - [ ] issue-22037.rs - [ ] issue-22289.rs - [ ] issue-22312.rs - [ ] issue-22370.rs - [ ] issue-22384.rs - [ ] issue-22434.rs - [ ] issue-22468.rs - [ ] issue-22560.rs - [ ] issue-22599.rs - [ ] issue-22603.rs - [ ] issue-22638.rs - [ ] issue-22673.rs - [ ] issue-22684.rs - [ ] issue-22706.rs - [ ] issue-22789.rs - [ ] issue-2281-part1.rs - [ ] issue-22874.rs - [ ] issue-22886.rs - [ ] issue-22933-1.rs - [ ] issue-22933-2.rs - [ ] issue-22933-3.rs - [ ] issue-23024.rs - [ ] issue-23041.rs - [ ] issue-23046.rs - [ ] issue-23073.rs - [ ] issue-23080-2.rs - [ ] issue-23080.rs - [ ] issue-23122-1.rs - [ ] issue-23122-2.rs - [ ] issue-23173.rs - [ ] issue-23217.rs - [ ] issue-23253.rs - [ ] issue-23281.rs - [ ] issue-2330.rs - [ ] issue-23302.rs - [ ] issue-23543.rs - [ ] issue-23544.rs - [ ] issue-23589.rs - [ ] issue-23595-1.rs - [ ] issue-23595-2.rs - [ ] issue-23716.rs - [ ] issue-23966.rs - [ ] issue-24013.rs - [ ] issue-24036.rs - [ ] issue-24081.rs - [ ] issue-24204.rs - [ ] issue-24267-flow-exit.rs - [ ] issue-24322.rs - [ ] issue-24352.rs - [ ] issue-24357.rs - [ ] issue-24363.rs - [ ] issue-24365.rs - [ ] issue-24424.rs - [ ] issue-24446.rs - [ ] issue-24682.rs - [ ] issue-24819.rs - [ ] issue-24883.rs - [ ] issue-25076.rs - [ ] issue-25368.rs - [ ] issue-25385.rs - [ ] issue-25386.rs - [ ] issue-25396.rs - [ ] issue-25579.rs - [ ] issue-25700.rs - [ ] issue-25793.rs - [ ] issue-25826.rs - [ ] issue-2590.rs - [ ] issue-25901.rs - [ ] issue-26056.rs - [ ] issue-26093.rs - [ ] issue-26094.rs - [ ] issue-26158.rs - [ ] issue-26194.rs - [ ] issue-26217.rs - [ ] issue-26237.rs - [ ] issue-26262.rs - [ ] issue-26459.rs - [ ] issue-26472.rs - [ ] issue-26614.rs - [ ] issue-26638.rs - [ ] issue-26812.rs - [ ] issue-26886.rs - [ ] issue-26905.rs - [ ] issue-26930.rs - [ ] issue-26948.rs - [ ] issue-27008.rs - [ ] issue-27033.rs - [ ] issue-27042.rs - [ ] issue-2718-a.rs - [ ] issue-27340.rs - [ ] issue-27433.rs - [ ] issue-27592.rs - [ ] issue-27815.rs - [ ] issue-27842.rs - [ ] issue-27895.rs - [ ] issue-27942.rs - [ ] issue-28075.rs - [ ] issue-28098.rs - [ ] issue-28105.rs - [ ] issue-28109.rs - [ ] issue-28113.rs - [ ] issue-2823.rs - [ ] issue-28324.rs - [ ] issue-28344.rs - [ ] issue-28388-1.rs - [ ] issue-28388-2.rs - [ ] issue-28388-3.rs - [ ] issue-28433.rs - [ ] issue-28472.rs - [ ] issue-2848.rs - [ ] issue-2849.rs - [ ] issue-28568.rs - [ ] issue-28576.rs - [ ] issue-28586.rs - [ ] issue-28625.rs - [ ] issue-28776.rs - [ ] issue-28837.rs - [ ] issue-28848.rs - [ ] issue-28971.rs - [ ] issue-28992-empty.rs - [ ] issue-29084.rs - [ ] issue-29124.rs - [ ] issue-29147.rs - [ ] issue-29161.rs - [ ] issue-29181.rs - [ ] issue-29184.rs - [ ] issue-2937.rs - [ ] issue-2951.rs - [ ] issue-29857.rs - [ ] issue-29861.rs - [ ] issue-2995.rs - [ ] issue-30007.rs - [ ] issue-30079.rs - [ ] issue-3008-1.rs - [ ] issue-3008-2.rs - [ ] issue-3008-3.rs - [ ] issue-30123.rs - [ ] issue-3021-b.rs - [ ] issue-3021-c.rs - [ ] issue-3021-d.rs - [ ] issue-3021.rs - [ ] issue-30225.rs - [ ] issue-30236.rs - [ ] issue-30240-b.rs - [ ] issue-30240.rs - [ ] issue-30255.rs - [ ] issue-30302.rs - [ ] issue-3038.rs - [ ] issue-30438-a.rs - [ ] issue-30438-b.rs - [ ] issue-30438-c.rs - [ ] issue-3044.rs - [ ] issue-30535.rs - [ ] issue-30560.rs - [ ] issue-30589.rs - [ ] issue-30730.rs - [ ] issue-3080.rs - [ ] issue-3096-1.rs - [ ] issue-3096-2.rs - [ ] issue-3099-a.rs - [ ] issue-3099-b.rs - [ ] issue-3099.rs - [ ] issue-31011.rs - [ ] issue-31109.rs - [ ] issue-31173.rs - [ ] issue-31212.rs - [ ] issue-31221.rs - [ ] issue-31495.rs - [ ] issue-31511.rs - [ ] issue-3154.rs - [ ] issue-31561.rs - [ ] issue-31769.rs - [ ] issue-31804.rs - [ ] issue-31845.rs - [ ] issue-31910.rs - [ ] issue-32004.rs - [ ] issue-32086.rs - [ ] issue-32119.rs - [ ] issue-3214.rs - [ ] issue-32201.rs - [ ] issue-32222.rs - [ ] issue-32323.rs - [ ] issue-32326.rs - [ ] issue-32377.rs - [ ] issue-32655.rs - [ ] issue-32709.rs - [ ] issue-32782.rs - [ ] issue-32797.rs - [ ] issue-32829.rs - [ ] issue-32833.rs - [ ] issue-32922.rs - [ ] issue-32950.rs - [ ] issue-32963.rs - [ ] issue-32995-2.rs - [ ] issue-32995.rs - [ ] issue-33293.rs - [ ] issue-3344.rs - [ ] issue-33464.rs - [ ] issue-33504.rs - [ ] issue-33571.rs - [ ] issue-33819.rs - [ ] issue-34028.rs - [ ] issue-34047.rs - [ ] issue-34171.rs - [ ] issue-34194.rs - [ ] issue-34209.rs - [ ] issue-34222-1.rs - [ ] issue-34334.rs - [ ] issue-34349.rs - [ ] issue-34373.rs - [ ] issue-34418.rs - [ ] issue-3477.rs - [ ] issue-34839.rs - [ ] issue-35075.rs - [ ] issue-35139.rs - [ ] issue-3521-2.rs - [ ] issue-3521.rs - [ ] issue-35450.rs - [ ] issue-35570.rs - [ ] issue-35668.rs - [ ] issue-35869.rs - [ ] issue-35988.rs - [ ] issue-3601.rs - [ ] issue-36082.rs - [ ] issue-36116.rs - [ ] issue-36163.rs - [ ] issue-36299.rs - [ ] issue-36379.rs - [ ] issue-36617.rs - [ ] issue-36638.rs - [ ] issue-3668-2.rs - [ ] issue-3668.rs - [ ] issue-36708.rs - [ ] issue-3680.rs - [ ] issue-36839.rs - [ ] issue-36881.rs - [ ] issue-3702-2.rs - [ ] issue-37026.rs - [ ] issue-37051.rs - [ ] issue-3707.rs - [ ] issue-37131.rs - [ ] issue-37323.rs - [ ] issue-37366.rs - [ ] issue-37510.rs - [ ] issue-37515.rs - [ ] issue-37534.rs - [ ] issue-37550.rs - [ ] issue-37576.rs - [ ] issue-3763.rs - [ ] issue-37665.rs - [ ] issue-3779.rs - [ ] issue-37884.rs - [ ] issue-38160.rs - [ ] issue-3820.rs - [ ] issue-38293.rs - [ ] issue-38381.rs - [ ] issue-38404.rs - [ ] issue-38412.rs - [ ] issue-38458.rs - [ ] issue-38604.rs - [ ] issue-38868.rs - [ ] issue-38919.rs - [ ] issue-38954.rs - [ ] issue-39122.rs - [ ] issue-39211.rs - [ ] issue-39362.rs - [ ] issue-39388.rs - [ ] issue-39404.rs - [ ] issue-39559-2.rs - [ ] issue-39559.rs - [ ] issue-39616.rs - [ ] issue-3973.rs - [ ] issue-3993.rs - [ ] issue-39970.rs - [ ] issue-39974.rs - [ ] issue-40000.rs - [ ] issue-40288-2.rs - [ ] issue-40288.rs - [ ] issue-40350.rs - [ ] issue-40510-1.rs - [ ] issue-40510-2.rs - [ ] issue-40510-3.rs - [ ] issue-40510-4.rs - [ ] issue-40610.rs - [ ] issue-40749.rs - [ ] issue-40845.rs - [ ] issue-40861.rs - [ ] issue-41139.rs - [ ] issue-41229-ref-str.rs - [ ] issue-41255.rs - [ ] issue-41394.rs - [ ] issue-41549.rs - [ ] issue-41726.rs - [ ] issue-41742.rs - [ ] issue-41776.rs - [ ] issue-41998.rs - [ ] issue-4201.rs - [ ] issue-42312.rs - [ ] issue-4265.rs - [ ] issue-42755.rs - [ ] issue-42796.rs - [ ] issue-42880.rs - [ ] issue-43162.rs - [ ] issue-4321.rs - [ ] issue-43250.rs - [ ] issue-4335.rs - [ ] issue-43424.rs - [ ] issue-43431.rs - [ ] issue-4366-2.rs - [ ] issue-4366.rs - [ ] issue-43733-2.rs - [ ] issue-43733.rs - [ ] issue-43784-associated-type.rs - [ ] issue-43784-supertrait.rs - [ ] issue-44021.rs - [ ] issue-44373.rs - [ ] issue-4517.rs - [ ] issue-4736.rs - [ ] issue-4935.rs - [ ] issue-4968.rs - [ ] issue-4972.rs - [ ] issue-5062.rs - [ ] issue-5067.rs - [ ] issue-5099.rs - [ ] issue-5100.rs - [ ] issue-5153.rs - [ ] issue-5216.rs - [ ] issue-5239-1.rs - [ ] issue-5358-1.rs - [ ] issue-5439.rs - [ ] issue-5500-1.rs - [ ] issue-5844.rs - [ ] issue-5883.rs - [ ] issue-5927.rs - [ ] issue-5997-enum.rs - [ ] issue-5997-struct.rs - [ ] issue-6458-2.rs - [ ] issue-6458-3.rs - [ ] issue-6458-4.rs - [ ] issue-6458.rs - [ ] issue-6596-1.rs - [ ] issue-6596-2.rs - [ ] issue-6642.rs - [ ] issue-6738.rs - [ ] issue-6801.rs - [ ] issue-6804.rs - [ ] issue-6936.rs - [ ] issue-6991.rs - [ ] issue-7013.rs - [ ] issue-7044.rs - [ ] issue-7061.rs - [ ] issue-7092.rs - [ ] issue-7246.rs - [ ] issue-7364.rs - [ ] issue-7573.rs - [ ] issue-7607-1.rs - [ ] issue-7813.rs - [ ] issue-7867.rs - [ ] issue-7950.rs - [ ] issue-7970a.rs - [ ] issue-7970b.rs - [ ] issue-8153.rs - [ ] issue-8208.rs - [ ] issue-8460-const.rs - [ ] issue-8640.rs - [ ] issue-8727.rs - [ ] issue-8761.rs - [ ] issue-8767.rs - [ ] issue-9575.rs - [ ] issue-9725.rs - [ ] issue-9814.rs - [ ] issue-pr29383.rs - [ ] issue32829.rs - [ ] keyword-false-as-identifier.rs - [ ] keyword-self-as-identifier.rs - [ ] keyword-super-as-identifier.rs - [ ] keyword-super.rs - [ ] keyword-true-as-identifier.rs - [ ] kindck-copy.rs - [ ] kindck-impl-type-params-2.rs - [ ] kindck-impl-type-params.rs - [ ] kindck-inherited-copy-bound.rs - [ ] kindck-nonsendable-1.rs - [ ] kindck-send-object.rs - [ ] kindck-send-object1.rs - [ ] kindck-send-object2.rs - [ ] kindck-send-owned.rs - [ ] kindck-send-unsafe.rs - [ ] kindck-send-unsafe.rs~rust-lang_master - [ ] label-static.rs - [ ] label-underscore.rs - [ ] lang-item-missing.rs - [ ] lexical-scopes.rs - [ ] lifetime-bound-will-change-warning.rs - [ ] lifetime-elision-return-type-requires-explicit-lifetime.rs - [ ] link-cfg-gated.rs - [ ] linkage1.rs - [ ] linkage2.rs - [ ] linkage3.rs - [ ] linkage4.rs - [ ] lint-attr-non-item-node.rs - [ ] lint-change-warnings.rs - [ ] lint-ctypes-enum.rs - [ ] lint-ctypes.rs - [ ] lint-dead-code-1.rs - [ ] lint-dead-code-2.rs - [ ] lint-dead-code-3.rs - [ ] lint-dead-code-4.rs - [ ] lint-dead-code-5.rs - [ ] lint-dead-code-type-alias.rs - [ ] lint-dead-code-variant.rs - [ ] lint-directives-on-use-items-issue-10534.rs - [ ] lint-exceeding-bitshifts.rs - [ ] lint-forbid-attr.rs - [ ] lint-forbid-cmdline.rs - [ ] lint-impl-fn.rs - [ ] lint-malformed.rs - [ ] lint-misplaced-attr.rs - [ ] lint-missing-copy-implementations.rs - [ ] lint-missing-doc.rs - [ ] lint-non-camel-case-types.rs - [ ] lint-non-snake-case-crate-2.rs - [ ] lint-non-snake-case-crate.rs - [ ] lint-non-snake-case-functions.rs - [ ] lint-non-snake-case-lifetimes.rs - [ ] lint-non-snake-case-modules.rs - [ ] lint-non-uppercase-statics.rs - [ ] lint-obsolete-attr.rs - [ ] lint-output-format-2.rs - [ ] lint-output-format.rs - [ ] lint-owned-heap-memory.rs - [ ] lint-qualification.rs - [ ] lint-removed-allow.rs - [ ] lint-removed-cmdline.rs - [ ] lint-removed.rs - [ ] lint-renamed-allow.rs - [ ] lint-renamed-cmdline.rs - [ ] lint-renamed.rs - [ ] lint-shorthand-field.rs - [ ] lint-stability-2.rs - [ ] lint-stability-deprecated.rs - [ ] lint-stability-fields-deprecated.rs - [ ] lint-stability-fields.rs - [ ] lint-stability.rs - [ ] lint-stability2.rs - [ ] lint-stability3.rs - [ ] lint-type-limits.rs - [ ] lint-type-limits2.rs - [ ] lint-type-limits3.rs - [ ] lint-type-overflow.rs - [ ] lint-type-overflow2.rs - [ ] lint-unconditional-recursion.rs - [ ] lint-unexported-no-mangle.rs - [ ] lint-unknown-attr.rs - [ ] lint-unknown-feature-default.rs - [ ] lint-unknown-feature.rs - [ ] lint-unknown-lint-cmdline.rs - [ ] lint-unknown-lint.rs - [ ] lint-unnecessary-import-braces.rs - [ ] lint-unnecessary-parens.rs - [ ] lint-unsafe-code.rs - [ ] lint-unused-extern-crate.rs - [ ] lint-unused-imports.rs - [ ] lint-unused-mut-self.rs - [ ] lint-unused-mut-variables.rs - [ ] lint-uppercase-variables.rs - [ ] liveness-assign-imm-local-in-loop.rs - [ ] liveness-assign-imm-local-in-op-eq.rs - [ ] liveness-assign-imm-local-with-init.rs - [ ] liveness-closure-require-ret.rs - [ ] liveness-dead.rs - [ ] liveness-forgot-ret.rs - [ ] liveness-issue-2163.rs - [ ] liveness-missing-ret2.rs - [ ] liveness-move-call-arg.rs - [ ] liveness-move-in-loop.rs - [ ] liveness-move-in-while.rs - [ ] liveness-return-last-stmt-semi.rs - [ ] liveness-unused.rs - [ ] liveness-use-after-move.rs - [ ] liveness-use-after-send.rs - [ ] log-syntax-gate.rs - [ ] log-syntax-gate2.rs - [ ] loop-break-value.rs - [ ] loop-labeled-break-value.rs - [ ] loop-proper-liveness.rs - [ ] loop-properly-diverging-2.rs - [ ] loops-reject-duplicate-labels-2.rs - [ ] loops-reject-duplicate-labels.rs - [ ] loops-reject-labels-shadowing-lifetimes.rs - [ ] loops-reject-lifetime-shadowing-label.rs - [ ] lub-if.rs - [ ] lub-match.rs - [ ] macro-attribute.rs - [ ] macro-context.rs - [ ] macro-crate-nonterminal-non-root.rs - [ ] macro-error.rs - [ ] macro-expanded-include - [ ] macro-expansion-tests.rs - [ ] macro-follow.rs - [ ] macro-followed-by-seq-bad.rs - [ ] macro-inner-attributes.rs - [ ] macro-input-future-proofing.rs - [ ] macro-invalid-fragment-spec.rs - [ ] macro-local-data-key-priv.rs - [ ] macro-match-nonterminal.rs - [ ] macro-missing-delimiters.rs - [ ] macro-missing-fragment.rs - [ ] macro-no-implicit-reexport.rs - [ ] macro-outer-attributes.rs - [ ] macro-parameter-span.rs - [ ] macro-reexport-malformed-1.rs - [ ] macro-reexport-malformed-2.rs - [ ] macro-reexport-malformed-3.rs - [ ] macro-reexport-not-locally-visible.rs - [ ] macro-reexport-undef.rs - [ ] macro-shadowing.rs - [ ] macro-stmt-matchers.rs - [ ] macro-tt-matchers.rs - [ ] macro-use-bad-args-1.rs - [ ] macro-use-bad-args-2.rs - [ ] macro-use-scope.rs - [ ] macro-use-undef.rs - [ ] macro-use-wrong-name.rs - [ ] macro-with-seps-err-msg.rs - [ ] macros-nonfatal-errors.rs - [ ] main-wrong-location.rs - [ ] main-wrong-type-2.rs - [ ] main-wrong-type.rs - [ ] malformed-derive-entry.rs - [ ] malformed-plugin-1.rs - [ ] malformed-plugin-2.rs - [ ] malformed-plugin-3.rs - [ ] malformed_macro_lhs.rs - [ ] manual-link-bad-form.rs - [ ] manual-link-bad-kind.rs - [ ] manual-link-bad-search-path.rs - [ ] manual-link-framework.rs - [ ] map-types.rs - [ ] match-argm-statics-2.rs - [ ] match-arm-statics.rs - [ ] match-byte-array-patterns-2.rs - [ ] match-byte-array-patterns.rs - [ ] match-ill-type2.rs - [ ] match-join.rs - [ ] match-no-arms-unreachable-after.rs - [ ] match-non-exhaustive.rs - [ ] match-pattern-field-mismatch-2.rs - [ ] match-pattern-field-mismatch.rs - [ ] match-privately-empty.rs - [ ] match-range-fail-2.rs - [ ] match-range-fail-dominate.rs - [ ] match-range-fail.rs - [ ] match-ref-ice.rs - [ ] match-ref-mut-invariance.rs - [ ] match-ref-mut-let-invariance.rs - [ ] match-slice-patterns.rs - [ ] match-static-const-lc.rs - [ ] match-struct.rs - [ ] match-tag-nullary.rs - [ ] match-tag-unary.rs - [ ] match-unreachable-warning-with-diverging-discrim.rs - [ ] match-unresolved-one-arm.rs - [ ] match-vec-fixed.rs - [ ] match-vec-mismatch-2.rs - [ ] match-vec-mismatch.rs - [ ] match-vec-unreachable.rs - [ ] maybe-bounds-where-cpass.rs - [ ] maybe-bounds-where.rs - [ ] maybe-bounds.rs - [ ] meta-expected-error-correct-rev.rs - [ ] meta-expected-error-wrong-rev.rs - [ ] method-ambig-one-trait-unknown-int-type.rs - [ ] method-ambig-two-traits-cross-crate.rs - [ ] method-ambig-two-traits-from-bounds.rs - [ ] method-ambig-two-traits-with-default-method.rs - [ ] method-call-err-msg.rs - [ ] method-call-lifetime-args-lint.rs - [ ] method-call-lifetime-args-subst-index.rs - [ ] method-call-lifetime-args-unresolved.rs - [ ] method-call-lifetime-args.rs - [ ] method-call-type-binding.rs - [ ] method-macro-backtrace.rs - [ ] method-missing-call.rs - [ ] method-path-in-pattern.rs - [ ] method-resolvable-path-in-pattern.rs - [ ] method-self-arg-1.rs - [ ] method-self-arg-2.rs - [ ] minus-string.rs - [ ] mir-dataflow - [ ] mir-unpretty.rs - [ ] missing-block-hint.rs - [ ] missing-derivable-attr.rs - [ ] missing-macro-use.rs - [ ] missing-main.rs - [ ] missing-return.rs - [ ] missing-semicolon-warning.rs - [ ] missing-stability.rs - [ ] missing_debug_impls.rs - [ ] mod_file_aux.rs - [ ] mod_file_correct_spans.rs - [ ] mod_file_disambig.rs - [ ] mod_file_disambig_aux - [ ] mod_file_disambig_aux.rs - [ ] module-macro_use-arguments.rs - [ ] move-in-guard-1.rs - [ ] move-in-guard-2.rs - [ ] move-into-dead-array-1.rs - [ ] move-into-dead-array-2.rs - [ ] move-out-of-array-1.rs - [ ] move-out-of-slice-1.rs - [ ] move-out-of-tuple-field.rs - [ ] moves-based-on-type-access-to-field.rs - [ ] moves-based-on-type-block-bad.rs - [ ] moves-based-on-type-capture-clause-bad.rs - [ ] moves-based-on-type-cyclic-types-issue-4821.rs - [ ] moves-based-on-type-distribute-copy-over-paren.rs - [ ] moves-based-on-type-exprs.rs - [ ] moves-based-on-type-match-bindings.rs - [ ] moves-based-on-type-move-out-of-closure-env-issue-1965.rs - [ ] moves-based-on-type-no-recursive-stack-closure.rs - [ ] moves-based-on-type-tuple.rs - [ ] moves-sru-moved-field.rs - [ ] multiple-main-2.rs - [ ] multiple-main-3.rs - [ ] multiple-plugin-registrars.rs - [ ] mut-cant-alias.rs - [ ] mut-cross-borrowing.rs - [ ] mut-pattern-internal-mutability.rs - [ ] mut-pattern-mismatched.rs - [ ] mut-suggestion.rs - [ ] mutable-class-fields-2.rs - [ ] mutable-class-fields.rs - [ ] mutable-enum-indirect.rs - [ ] mutexguard-sync.rs - [ ] name-clash-nullary.rs - [ ] namespace-mix.rs - [ ] namespaced-enum-glob-import-no-impls-xcrate.rs - [ ] namespaced-enum-glob-import-no-impls.rs - [ ] nested-cfg-attrs.rs - [ ] nested-ty-params.rs - [ ] never-assign-dead-code.rs - [ ] never-assign-wrong-type.rs - [ ] never-disabled.rs - [ ] no-capture-arc.rs - [ ] no-core-gated.rs - [ ] no-implicit-prelude-nested.rs - [ ] no-implicit-prelude.rs - [ ] no-link.rs - [ ] no-patterns-in-args-2.rs - [ ] no-patterns-in-args.rs - [ ] no-reuse-move-arc.rs - [ ] no-send-res-ports.rs - [ ] no-std-inject.rs - [ ] no-type-for-node-ice.rs - [ ] no-warn-on-field-replace-issue-34101.rs - [ ] no_crate_type.rs - [ ] no_owned_box_lang_item.rs - [ ] no_send-enum.rs - [ ] no_send-rc.rs - [ ] no_send-struct.rs - [ ] no_share-enum.rs - [ ] no_share-struct.rs - [ ] noexporttypeexe.rs - [ ] nolink-with-link-args.rs - [ ] non-constant-expr-for-arr-len.rs - [ ] non-constant-in-const-path.rs - [ ] non-copyable-void.rs - [ ] non-exhaustive-match-nested.rs - [ ] non-exhaustive-match.rs - [ ] non-exhaustive-pattern-witness.rs - [ ] non-interger-atomic.rs - [ ] noncopyable-class.rs - [ ] nonscalar-cast.rs - [ ] not-clone-closure.rs - [ ] not-copy-closure.rs - [ ] not-enough-arguments.rs - [ ] not-panic-safe-2.rs - [ ] not-panic-safe-3.rs - [ ] not-panic-safe-4.rs - [ ] not-panic-safe-5.rs - [ ] not-panic-safe-6.rs - [ ] not-panic-safe.rs - [ ] not-sync.rs - [ ] not-utf8.bin - [ ] not-utf8.rs - [ ] numeric-fields.rs - [ ] object-does-not-impl-trait.rs - [ ] object-lifetime-default-ambiguous.rs - [ ] object-lifetime-default-elision.rs - [ ] object-lifetime-default-from-box-error.rs - [ ] object-lifetime-default-from-rptr-box-error.rs - [ ] object-lifetime-default-from-rptr-struct-error.rs - [ ] object-lifetime-default-mybox.rs - [ ] object-lifetime-default.rs - [ ] object-pointer-types.rs - [ ] object-safety-associated-consts.rs - [ ] object-safety-by-value-self-use.rs - [ ] object-safety-by-value-self.rs - [ ] object-safety-generics.rs - [ ] object-safety-issue-22040.rs - [ ] object-safety-mentions-Self.rs - [ ] object-safety-no-static.rs - [ ] object-safety-phantom-fn.rs - [ ] object-safety-sized-2.rs - [ ] object-safety-sized.rs - [ ] object-safety-supertrait-mentions-Self.rs - [ ] occurs-check-2.rs - [ ] occurs-check-3.rs - [ ] occurs-check.rs - [ ] old-suffixes-are-really-forbidden.rs - [ ] once-cant-call-twice-on-heap.rs - [ ] opt-in-copy.rs - [ ] or-patter-mismatch.rs - [ ] orphan-check-diagnostics.rs - [ ] osx-frameworks.rs - [ ] out-of-order-shadowing.rs - [ ] output-type-mismatch.rs - [ ] overlap-marker-trait.rs - [ ] overloaded-calls-nontuple.rs - [ ] packed-struct-generic-transmute.rs - [ ] packed-struct-transmute.rs - [ ] panic-runtime - [ ] paren-span.rs - [ ] parse-error-correct.rs - [ ] parser-recovery-1.rs - [ ] parser-recovery-2.rs - [ ] partialeq_help.rs - [ ] pat-shadow-in-nested-binding.rs - [ ] pat-slice-old-style.rs - [ ] pat-tuple-bad-type.rs - [ ] pat-tuple-overfield.rs - [ ] patkind-litrange-no-expr.rs - [ ] pattern-bindings-after-at.rs - [ ] pattern-error-continue.rs - [ ] pattern-ident-path-generics.rs - [ ] pattern-macro-hygiene.rs - [ ] pattern-tyvar-2.rs - [ ] pattern-tyvar.rs - [ ] phantom-oibit.rs - [ ] placement-expr-unsafe.rs - [ ] placement-expr-unstable.rs - [ ] platform-intrinsic-params.rs - [ ] pptypedef.rs - [ ] prim-with-args.rs - [ ] priv-in-bad-locations.rs - [ ] privacy - [ ] privacy-in-paths.rs - [ ] privacy-ns1.rs - [ ] privacy-ns2.rs - [ ] privacy-sanity.rs - [ ] privacy-ufcs.rs - [ ] privacy1.rs - [ ] privacy2.rs - [ ] privacy3.rs - [ ] privacy4.rs - [ ] privacy5.rs - [ ] private-impl-method.rs - [ ] private-in-public-lint.rs - [ ] private-in-public-warn.rs - [ ] private-in-public.rs - [ ] private-inferred-type-1.rs - [ ] private-inferred-type-2.rs - [ ] private-inferred-type-3.rs - [ ] private-inferred-type.rs - [ ] private-item-simple.rs - [ ] private-method-cross-crate.rs - [ ] private-method-inherited.rs - [ ] private-method.rs - [ ] private-struct-field-cross-crate.rs - [ ] private-struct-field-ctor.rs - [ ] private-struct-field-pattern.rs - [ ] private-struct-field.rs - [ ] private-type-in-interface.rs - [ ] private-variant-reexport.rs - [ ] ptr-coercion.rs - [ ] pub-reexport-priv-extern-crate.rs - [ ] qualified-path-params-2.rs - [ ] qualified-path-params.rs - [ ] question-mark-type-infer.rs - [ ] range-1.rs - [ ] range_inclusive_gate.rs - [ ] range_traits-1.rs - [ ] range_traits-2.rs - [ ] range_traits-3.rs - [ ] range_traits-4.rs - [ ] range_traits-5.rs - [ ] range_traits-6.rs - [ ] range_traits-7.rs - [ ] recursion.rs - [ ] recursive-enum.rs - [ ] recursive-reexports.rs - [ ] recursive-types-are-not-uninhabited.rs - [ ] ref-suggestion.rs - [ ] refutable-pattern-errors.rs - [ ] refutable-pattern-in-fn-arg.rs - [ ] region-borrow-params-issue-29793-big.rs - [ ] region-borrow-params-issue-29793-small.rs - [ ] region-bound-extra-bound-in-inherent-impl.rs - [ ] region-bound-on-closure-outlives-call.rs - [ ] region-bound-same-bounds-in-trait-and-impl.rs - [ ] region-bounds-on-objects-and-type-parameters.rs - [ ] region-invariant-static-error-reporting.rs - [ ] region-lifetime-bounds-on-fns-where-clause.rs - [ ] region-multiple-lifetime-bounds-on-fns-where-clause.rs - [ ] region-object-lifetime-1.rs - [ ] region-object-lifetime-2.rs - [ ] region-object-lifetime-3.rs - [ ] region-object-lifetime-4.rs - [ ] region-object-lifetime-5.rs - [ ] region-object-lifetime-in-coercion.rs - [ ] regions-addr-of-arg.rs - [ ] regions-addr-of-self.rs - [ ] regions-addr-of-upvar-self.rs - [ ] regions-adjusted-lvalue-op.rs - [ ] regions-assoc-type-in-supertrait-outlives-container.rs - [ ] regions-assoc-type-region-bound-in-trait-not-met.rs - [ ] regions-assoc-type-static-bound-in-trait-not-met.rs - [ ] regions-bound-missing-bound-in-impl.rs - [ ] regions-bounded-by-trait-requiring-static.rs - [ ] regions-bounded-method-type-parameters-cross-crate.rs - [ ] regions-bounded-method-type-parameters-trait-bound.rs - [ ] regions-bounded-method-type-parameters.rs - [ ] regions-bounds.rs - [ ] regions-close-associated-type-into-object.rs - [ ] regions-close-object-into-object-1.rs - [ ] regions-close-object-into-object-2.rs - [ ] regions-close-object-into-object-3.rs - [ ] regions-close-object-into-object-4.rs - [ ] regions-close-object-into-object-5.rs - [ ] regions-close-over-type-parameter-1.rs - [ ] regions-close-over-type-parameter-multiple.rs - [ ] regions-close-param-into-object.rs - [ ] regions-creating-enums.rs - [ ] regions-creating-enums3.rs - [ ] regions-creating-enums4.rs - [ ] regions-early-bound-error-method.rs - [ ] regions-early-bound-error.rs - [ ] regions-enum-not-wf.rs - [ ] regions-escape-bound-fn-2.rs - [ ] regions-escape-bound-fn.rs - [ ] regions-escape-method.rs - [ ] regions-escape-unboxed-closure.rs - [ ] regions-escape-via-trait-or-not.rs - [ ] regions-fn-subtyping-return-static.rs - [ ] regions-free-region-ordering-callee-4.rs - [ ] regions-free-region-ordering-callee.rs - [ ] regions-free-region-ordering-caller.rs - [ ] regions-free-region-ordering-caller1.rs - [ ] regions-free-region-ordering-incorrect.rs - [ ] regions-glb-free-free.rs - [ ] regions-implied-bounds-projection-gap-1.rs - [ ] regions-implied-bounds-projection-gap-2.rs - [ ] regions-implied-bounds-projection-gap-3.rs - [ ] regions-implied-bounds-projection-gap-4.rs - [ ] regions-implied-bounds-projection-gap-hr-1.rs - [ ] regions-in-enums-anon.rs - [ ] regions-in-enums.rs - [ ] regions-in-structs-anon.rs - [ ] regions-in-structs.rs - [ ] regions-infer-at-fn-not-param.rs - [ ] regions-infer-borrow-scope-too-big.rs - [ ] regions-infer-bound-from-trait-self.rs - [ ] regions-infer-bound-from-trait.rs - [ ] regions-infer-call-3.rs - [ ] regions-infer-contravariance-due-to-decl.rs - [ ] regions-infer-covariance-due-to-decl.rs - [ ] regions-infer-invariance-due-to-decl.rs - [ ] regions-infer-invariance-due-to-mutability-3.rs - [ ] regions-infer-invariance-due-to-mutability-4.rs - [ ] regions-infer-not-param.rs - [ ] regions-infer-paramd-indirect.rs - [ ] regions-infer-proc-static-upvar.rs - [ ] regions-lifetime-bounds-on-fns.rs - [ ] regions-lifetime-of-struct-or-enum-variant.rs - [ ] regions-name-duplicated.rs - [ ] regions-name-static.rs - [ ] regions-name-undeclared.rs - [ ] regions-nested-fns-2.rs - [ ] regions-nested-fns.rs - [ ] regions-outlives-nominal-type-enum-region-rev.rs - [ ] regions-outlives-nominal-type-enum-region.rs - [ ] regions-outlives-nominal-type-enum-type-rev.rs - [ ] regions-outlives-nominal-type-enum-type.rs - [ ] regions-outlives-nominal-type-struct-region-rev.rs - [ ] regions-outlives-nominal-type-struct-region.rs - [ ] regions-outlives-nominal-type-struct-type-rev.rs - [ ] regions-outlives-nominal-type-struct-type.rs - [ ] regions-outlives-projection-container-hrtb.rs - [ ] regions-outlives-projection-container-wc.rs - [ ] regions-outlives-projection-container.rs - [ ] regions-outlives-projection-hrtype.rs - [ ] regions-outlives-projection-trait-def.rs - [ ] regions-outlives-scalar.rs - [ ] regions-pattern-typing-issue-19552.rs - [ ] regions-pattern-typing-issue-19997.rs - [ ] regions-proc-bound-capture.rs - [ ] regions-reborrow-from-shorter-mut-ref-mut-ref.rs - [ ] regions-reborrow-from-shorter-mut-ref.rs - [ ] regions-ref-in-fn-arg.rs - [ ] regions-ret-borrowed-1.rs - [ ] regions-ret-borrowed.rs - [ ] regions-ret.rs - [ ] regions-return-ref-to-upvar-issue-17403.rs - [ ] regions-return-stack-allocated-vec.rs - [ ] regions-static-bound.rs - [ ] regions-steal-closure.rs - [ ] regions-struct-not-wf.rs - [ ] regions-trait-1.rs - [ ] regions-trait-object-subtyping.rs - [ ] regions-trait-variance.rs - [ ] regions-undeclared.rs - [ ] regions-var-type-out-of-scope.rs - [ ] regions-variance-contravariant-use-covariant-in-second-position.rs - [ ] regions-variance-contravariant-use-covariant.rs - [ ] regions-variance-covariant-use-contravariant.rs - [ ] regions-variance-invariant-use-contravariant.rs - [ ] regions-variance-invariant-use-covariant.rs - [ ] regions-wf-trait-object.rs - [ ] reject-specialized-drops-8142.rs - [ ] repeat-to-run-dtor-twice.rs - [ ] repeat_count.rs - [ ] repr-align.rs - [ ] repr-packed-contains-align.rs - [ ] required-lang-item.rs - [ ] reserved-attr-on-macro.rs - [ ] reserved-become.rs - [ ] resolve-bad-import-prefix.rs - [ ] resolve-bad-visibility.rs - [ ] resolve-conflict-extern-crate-vs-extern-crate.rs - [ ] resolve-conflict-import-vs-extern-crate.rs - [ ] resolve-conflict-import-vs-import.rs - [ ] resolve-conflict-item-vs-extern-crate.rs - [ ] resolve-conflict-item-vs-import.rs - [ ] resolve-conflict-type-vs-import.rs - [ ] resolve-inconsistent-binding-mode.rs - [ ] resolve-inconsistent-names.rs - [ ] resolve-label.rs - [ ] resolve-primitive-fallback.rs - [ ] resolve-self-in-impl-2.rs - [ ] resolve-self-in-impl.rs - [ ] resolve-type-param-in-item-in-trait.rs - [ ] resolve-unknown-trait.rs - [ ] resolve-variant-assoc-item.rs - [ ] resolve_self_super_hint.rs - [ ] ret-non-nil.rs - [ ] retslot-cast.rs - [ ] return-from-diverging.rs - [ ] return-unit-from-diverging.rs - [ ] rfc1445 - [ ] rfc1623.rs - [ ] rfc1717 - [ ] rmeta-lib-pass.rs - [ ] rmeta-pass.rs - [ ] rmeta-priv-warn.rs - [ ] rmeta.rs - [ ] rmeta_lib.rs - [ ] rmeta_meta_main.rs - [ ] rust-unstable-column-gated.rs - [ ] rustc-error.rs - [ ] safe-extern-statics-mut.rs - [ ] safe-extern-statics.rs - [ ] self-impl.rs - [ ] self-infer.rs - [ ] self-vs-path-ambiguity.rs - [ ] self_type_keyword-2.rs - [ ] self_type_keyword.rs - [ ] seq-args.rs - [ ] shadowed-lifetime.rs - [ ] shadowed-trait-methods.rs - [ ] shadowed-use-visibility.rs - [ ] shadowing-in-the-same-pattern.rs - [ ] shift-various-bad-types.rs - [ ] simd-intrinsic-declaration-type.rs - [ ] simd-intrinsic-generic-arithmetic.rs - [ ] simd-intrinsic-generic-cast.rs - [ ] simd-intrinsic-generic-comparison.rs - [ ] simd-intrinsic-generic-elements.rs - [ ] simd-intrinsic-single-nominal-type.rs - [ ] simd-type-generic-monomorphisation.rs - [ ] simd-type.rs - [ ] single-derive-attr.rs - [ ] single-primitive-inherent-impl.rs - [ ] sized-cycle-note.rs - [ ] slice-2.rs - [ ] slice-mut-2.rs - [ ] slice-mut.rs - [ ] slightly-nice-generic-literal-messages.rs - [ ] specialization - [ ] stability-attribute-issue-43027.rs - [ ] stability-attribute-issue.rs - [ ] stability-attribute-non-staged-force-unstable.rs - [ ] stability-attribute-non-staged.rs - [ ] stability-attribute-sanity-2.rs - [ ] stability-attribute-sanity-3.rs - [ ] stability-attribute-sanity.rs - [ ] stable-features.rs - [ ] static-array-across-crate.rs - [ ] static-drop-scope.rs - [ ] static-items-cant-move.rs - [ ] static-lifetime-bound.rs - [ ] static-method-privacy.rs - [ ] static-mut-bad-types.rs - [ ] static-mut-foreign-requires-unsafe.rs - [ ] static-mut-not-constant.rs - [ ] static-mut-not-pat.rs - [ ] static-mut-requires-unsafe.rs - [ ] static-priv-by-default.rs - [ ] static-priv-by-default2.rs - [ ] static-reference-to-fn-1.rs - [ ] static-reference-to-fn-2.rs - [ ] static-region-bound.rs - [ ] static-vec-repeat-not-constant.rs - [ ] staticness-mismatch.rs - [ ] std-uncopyable-atomics.rs - [ ] stmt_expr_attrs_no_feature.rs - [ ] str-concat-on-double-ref.rs - [ ] str-idx.rs - [ ] str-mut-idx.rs - [ ] struct-base-wrong-type-2.rs - [ ] struct-base-wrong-type.rs - [ ] struct-field-cfg.rs - [ ] struct-field-privacy.rs - [ ] struct-fields-decl-dupe.rs - [ ] struct-fields-dupe.rs - [ ] struct-fields-hints-no-dupe.rs - [ ] struct-fields-hints.rs - [ ] struct-fields-missing.rs - [ ] struct-fields-shorthand-unresolved.rs - [ ] struct-fields-shorthand.rs - [ ] struct-fields-too-many.rs - [ ] struct-fields-typo.rs - [ ] struct-like-enum-nonexhaustive.rs - [ ] struct-pat-derived-error.rs - [ ] struct-path-alias-bounds.rs - [ ] struct-path-associated-type.rs - [ ] struct-path-self-type-mismatch.rs - [ ] struct-path-self.rs - [ ] struct-pattern-match-useless.rs - [ ] struct-variant-privacy-xc.rs - [ ] struct-variant-privacy.rs - [ ] structure-constructor-type-mismatch.rs - [ ] substs-ppaux.rs - [ ] suffixed-literal-meta.rs - [ ] suggest-private-fields.rs - [ ] super-at-top-level.rs - [ ] suppressed-error.rs - [ ] svh-change-lit.rs - [ ] svh-change-significant-cfg.rs - [ ] svh-change-trait-bound.rs - [ ] svh-change-type-arg.rs - [ ] svh-change-type-ret.rs - [ ] svh-change-type-static.rs - [ ] svh-use-trait.rs - [ ] symbol-names - [ ] syntax-extension-minor.rs - [ ] syntax-trait-polarity-feature-gate.rs - [ ] syntaxt-default-trait-impls.rs - [ ] tag-that-dare-not-speak-its-name.rs - [ ] tag-type-args.rs - [ ] tag-variant-cast-non-nullary.rs - [ ] tag-variant-disr-dup.rs - [ ] tail-typeck.rs - [ ] task-rng-isnt-sendable.rs - [ ] terr-in-field.rs - [ ] terr-sorts.rs - [ ] test-cfg.rs - [ ] test-warns-dead-code.rs - [ ] thread-local-in-ctfe.rs - [ ] trace_macros-format.rs - [ ] trace_macros-gate.rs - [ ] trait-as-struct-constructor.rs - [ ] trait-bounds-not-on-bare-trait.rs - [ ] trait-bounds-not-on-struct.rs - [ ] trait-bounds-on-structs-and-enums-in-fns.rs - [ ] trait-bounds-on-structs-and-enums-in-impls.rs - [ ] trait-bounds-on-structs-and-enums-locals.rs - [ ] trait-bounds-on-structs-and-enums-static.rs - [ ] trait-bounds-on-structs-and-enums-xc.rs - [ ] trait-bounds-on-structs-and-enums-xc1.rs - [ ] trait-bounds-on-structs-and-enums.rs - [ ] trait-bounds-sugar.rs - [ ] trait-coercion-generic-bad.rs - [ ] trait-coercion-generic-regions.rs - [ ] trait-duplicate-methods.rs - [ ] trait-impl-1.rs - [ ] trait-impl-can-not-have-untraitful-items.rs - [ ] trait-impl-different-num-params.rs - [ ] trait-impl-for-module.rs - [ ] trait-impl-method-mismatch.rs - [ ] trait-impl-of-supertrait-has-wrong-lifetime-parameters.rs - [ ] trait-item-privacy.rs - [ ] trait-matching-lifetimes.rs - [ ] trait-object-macro-matcher.rs - [ ] trait-object-safety.rs - [ ] trait-object-vs-lifetime-2.rs - [ ] trait-object-vs-lifetime.rs - [ ] trait-or-new-type-instead.rs - [ ] trait-privacy.rs - [ ] trait-resolution-in-overloaded-op.rs - [ ] trait-safety-fn-body.rs - [ ] trait-safety-inherent-impl.rs - [ ] trait-safety-trait-impl-cc.rs - [ ] trait-safety-trait-impl.rs - [ ] trait-static-method-generic-inference.rs - [ ] trait-suggest-where-clause.rs - [ ] trait-test-2.rs - [ ] trait-test.rs - [ ] traits-assoc-type-in-supertrait-bad.rs - [ ] traits-inductive-overflow-simultaneous.rs - [ ] traits-inductive-overflow-supertrait-oibit.rs - [ ] traits-inductive-overflow-supertrait.rs - [ ] traits-inductive-overflow-two-traits.rs - [ ] traits-issue-23003-overflow.rs - [ ] traits-multidispatch-bad.rs - [ ] traits-multidispatch-convert-ambig-dest.rs - [ ] traits-negative-impls.rs - [ ] traits-repeated-supertrait-ambig.rs - [ ] transmute-different-sizes.rs - [ ] transmute-fat-pointers.rs - [ ] transmute-impl.rs - [ ] transmute-imut-to-mut.rs - [ ] trivial_casts.rs - [ ] tuple-arity-mismatch.rs - [ ] tuple-index-not-tuple.rs - [ ] tuple-index-out-of-bounds.rs - [ ] tuple-struct-nonexhaustive.rs - [ ] tutorial-suffix-inference-test.rs - [ ] type-arg-out-of-scope.rs - [ ] type-ascription-feature-gate.rs - [ ] type-ascription-precedence.rs - [ ] type-ascription-soundness.rs - [ ] type-mismatch-multiple.rs - [ ] type-mismatch-same-crate-name.rs - [ ] type-parameter-defaults-referencing-Self-ppaux.rs - [ ] type-parameter-defaults-referencing-Self.rs - [ ] type-parameter-invalid-lint.rs - [ ] type-parameter-names.rs - [ ] type-params-in-different-spaces-1.rs - [ ] type-params-in-different-spaces-2.rs - [ ] type-params-in-different-spaces-3.rs - [ ] type-recursive.rs - [ ] type-shadow.rs - [ ] type_length_limit.rs - [ ] typeck-auto-trait-no-supertraits-2.rs - [ ] typeck-auto-trait-no-supertraits.rs - [ ] typeck-auto-trait-no-typeparams.rs - [ ] typeck-builtin-bound-type-parameters.rs - [ ] typeck-cast-pointer-to-float.rs - [ ] typeck-default-trait-impl-assoc-type.rs - [ ] typeck-default-trait-impl-constituent-types-2.rs - [ ] typeck-default-trait-impl-constituent-types.rs - [ ] typeck-default-trait-impl-cross-crate-coherence.rs - [ ] typeck-default-trait-impl-negation-send.rs - [ ] typeck-default-trait-impl-negation-sync.rs - [ ] typeck-default-trait-impl-negation.rs - [ ] typeck-default-trait-impl-outside-crate.rs - [ ] typeck-default-trait-impl-precedence.rs - [ ] typeck-default-trait-impl-send-param.rs - [ ] typeck-negative-impls-builtin.rs - [ ] typeck-unsafe-always-share.rs - [ ] typeck_type_placeholder_item.rs - [ ] typeck_type_placeholder_lifetime_1.rs - [ ] typeck_type_placeholder_lifetime_2.rs - [ ] typeck_type_placeholder_mismatch.rs - [ ] ufcs-explicit-self-bad.rs - [ ] ufcs-partially-resolved.rs - [ ] ufcs-qpath-missing-params.rs - [ ] ufcs-qpath-self-mismatch.rs - [ ] unadjusted-unstable.rs - [ ] unboxed-closer-non-implicit-copyable.rs - [ ] unboxed-closure-feature-gate.rs - [ ] unboxed-closure-illegal-move.rs - [ ] unboxed-closure-immutable-capture.rs - [ ] unboxed-closure-region.rs - [ ] unboxed-closure-sugar-default.rs - [ ] unboxed-closure-sugar-equiv.rs - [ ] unboxed-closure-sugar-lifetime-elision.rs - [ ] unboxed-closure-sugar-not-used-on-fn.rs - [ ] unboxed-closure-sugar-region.rs - [ ] unboxed-closure-sugar-used-on-struct-1.rs - [ ] unboxed-closure-sugar-used-on-struct-3.rs - [ ] unboxed-closure-sugar-used-on-struct.rs - [ ] unboxed-closure-sugar-wrong-number-number-type-parameters-1.rs - [ ] unboxed-closure-sugar-wrong-number-number-type-parameters-3.rs - [ ] unboxed-closure-sugar-wrong-number-number-type-parameters.rs - [ ] unboxed-closure-sugar-wrong-trait.rs - [ ] unboxed-closures-borrow-conflict.rs - [ ] unboxed-closures-failed-recursive-fn-1.rs - [ ] unboxed-closures-failed-recursive-fn-2.rs - [ ] unboxed-closures-fnmut-as-fn.rs - [ ] unboxed-closures-infer-argument-types-two-region-pointers.rs - [ ] unboxed-closures-infer-fnmut-calling-fnmut-no-mut.rs - [ ] unboxed-closures-infer-fnmut-missing-mut.rs - [ ] unboxed-closures-infer-fnmut-move-missing-mut.rs - [ ] unboxed-closures-infer-fnonce-call-twice.rs - [ ] unboxed-closures-infer-fnonce-move-call-twice.rs - [ ] unboxed-closures-mutate-upvar.rs - [ ] unboxed-closures-mutated-upvar-from-fn-closure.rs - [ ] unboxed-closures-recursive-fn-using-fn-mut.rs - [ ] unboxed-closures-static-call-wrong-trait.rs - [ ] unboxed-closures-type-mismatch.rs - [ ] unboxed-closures-unsafe-extern-fn.rs - [ ] unboxed-closures-wrong-abi.rs - [ ] unboxed-closures-wrong-arg-type-extern-fn.rs - [ ] unconstrained-none.rs - [ ] unconstrained-ref.rs - [ ] underscore-lifetime-binders.rs - [ ] underscore-lifetime-elison-mismatch.rs - [ ] uninhabited-enum-cast.rs - [ ] uninhabited-irrefutable.rs - [ ] uninhabited-matches-feature-gated.rs - [ ] uninhabited-patterns.rs - [ ] union - [ ] unique-object-noncopyable.rs - [ ] unique-pinned-nocopy.rs - [ ] unop-move-semantics.rs - [ ] unop-neg-bool.rs - [ ] unreachable-arm.rs - [ ] unreachable-code.rs - [ ] unreachable-in-call.rs - [ ] unreachable-loop-patterns.rs - [ ] unreachable-try-pattern.rs - [ ] unreachable-variant.rs - [ ] unresolved-extern-mod-suggestion.rs - [ ] unresolved-import-recovery.rs - [ ] unresolved-import.rs - [ ] unsafe-around-compiler-generated-unsafe.rs - [ ] unsafe-const-fn.rs - [ ] unsafe-fn-assign-deref-ptr.rs - [ ] unsafe-fn-autoderef.rs - [ ] unsafe-fn-called-from-safe.rs - [ ] unsafe-fn-deref-ptr.rs - [ ] unsafe-fn-used-as-value.rs - [ ] unsafe-subtyping.rs - [ ] unsafe-trait-impl.rs - [ ] unsized-bare-typaram.rs - [ ] unsized-enum.rs - [ ] unsized-enum2.rs - [ ] unsized-inherent-impl-self-type.rs - [ ] unsized-struct.rs - [ ] unsized-trait-impl-self-type.rs - [ ] unsized-trait-impl-trait-arg.rs - [ ] unsized3.rs - [ ] unsized5.rs - [ ] unsized6.rs - [ ] unsized7.rs - [ ] unspecified-self-in-trait-ref.rs - [ ] unsupported-cast.rs - [ ] unused-attr.rs - [ ] unused-macro-rules.rs - [ ] unused-macro-with-bad-frag-spec.rs - [ ] unused-macro-with-follow-violation.rs - [ ] unused-macro.rs - [ ] unused-mut-warning-captured-var.rs - [ ] unused-result.rs - [ ] use-after-move-based-on-type.rs - [ ] use-after-move-implicity-coerced-object.rs - [ ] use-after-move-self-based-on-type.rs - [ ] use-after-move-self.rs - [ ] use-from-trait-xc.rs - [ ] use-from-trait.rs - [ ] use-keyword.rs - [ ] use-meta-mismatch.rs - [ ] use-mod-2.rs - [ ] use-mod-3.rs - [ ] use-mod-4.rs - [ ] use-mod.rs - [ ] use-paths-as-items.rs - [ ] use-self-type.rs - [ ] use-super-global-path.rs - [ ] useless-pub.rs - [ ] useless_comment.rs - [ ] user-defined-macro-rules.rs - [ ] utf8_idents.rs - [ ] variadic-ffi-2.rs - [ ] variadic-ffi-3.rs - [ ] variadic-ffi.rs - [ ] variance-associated-types.rs - [ ] variance-btree-invariant-types.rs - [ ] variance-cell-is-invariant.rs - [ ] variance-contravariant-arg-object.rs - [ ] variance-contravariant-arg-trait-match.rs - [ ] variance-contravariant-self-trait-match.rs - [ ] variance-covariant-arg-object.rs - [ ] variance-covariant-arg-trait-match.rs - [ ] variance-covariant-self-trait-match.rs - [ ] variance-invariant-arg-object.rs - [ ] variance-invariant-arg-trait-match.rs - [ ] variance-invariant-self-trait-match.rs - [ ] variance-issue-20533.rs - [ ] variance-object-types.rs - [ ] variance-regions-direct.rs - [ ] variance-regions-indirect.rs - [ ] variance-regions-unused-direct.rs - [ ] variance-regions-unused-indirect.rs - [ ] variance-trait-bounds.rs - [ ] variance-trait-matching.rs - [ ] variance-trait-object-bound.rs - [ ] variance-types-bounds.rs - [ ] variance-types.rs - [ ] variance-unused-region-param.rs - [ ] variance-unused-type-param.rs - [ ] variance-use-contravariant-struct-1.rs - [ ] variance-use-contravariant-struct-2.rs - [ ] variance-use-covariant-struct-1.rs - [ ] variance-use-covariant-struct-2.rs - [ ] variance-use-invariant-struct-1.rs - [ ] variant-namespacing.rs - [ ] variant-size-differences.rs - [ ] variant-used-as-type.rs - [ ] vec-macro-with-comma-only.rs - [ ] vec-mut-iter-borrow.rs - [ ] vec-res-add.rs - [ ] vector-cast-weirdness.rs - [ ] vector-no-ann.rs - [ ] vtable-res-trait-param.rs - [ ] walk-struct-literal-with.rs - [ ] warn-path-statement.rs - [ ] weak-lang-item.rs - [ ] wf-array-elem-sized.rs - [ ] wf-const-type.rs - [ ] wf-enum-bound.rs - [ ] wf-enum-fields-struct-variant.rs - [ ] wf-enum-fields.rs - [ ] wf-fn-where-clause.rs - [ ] wf-impl-associated-type-region.rs - [ ] wf-impl-associated-type-trait.rs - [ ] wf-in-fn-arg.rs - [ ] wf-in-fn-ret.rs - [ ] wf-in-fn-type-arg.rs - [ ] wf-in-fn-type-ret.rs - [ ] wf-in-fn-type-static.rs - [ ] wf-in-fn-where-clause.rs - [ ] wf-in-obj-type-static.rs - [ ] wf-in-obj-type-trait.rs - [ ] wf-inherent-impl-method-where-clause.rs - [ ] wf-inherent-impl-where-clause.rs - [ ] wf-misc-methods-issue-28609.rs - [ ] wf-object-safe.rs - [ ] wf-outlives-ty-in-fn-or-trait.rs - [ ] wf-static-method.rs - [ ] wf-static-type.rs - [ ] wf-struct-bound.rs - [ ] wf-struct-field.rs - [ ] wf-trait-associated-type-bound.rs - [ ] wf-trait-associated-type-region.rs - [ ] wf-trait-associated-type-trait.rs - [ ] wf-trait-bound.rs - [ ] wf-trait-default-fn-arg.rs - [ ] wf-trait-default-fn-ret.rs - [ ] wf-trait-default-fn-where-clause.rs - [ ] wf-trait-fn-arg.rs - [ ] wf-trait-fn-ret.rs - [ ] wf-trait-fn-where-clause.rs - [ ] wf-trait-superbound.rs - [ ] where-clause-constraints-are-local-for-inherent-impl.rs - [ ] where-clause-constraints-are-local-for-trait-impl.rs - [ ] where-clause-method-substituion.rs - [ ] where-clauses-method-unsatisfied.rs - [ ] where-clauses-unsatisfied.rs - [ ] where-equality-constraints.rs - [ ] where-for-self-2.rs - [ ] where-for-self.rs - [ ] where-lifetime-resolution.rs - [ ] while-let.rs - [ ] while-type-error.rs - [ ] windows-subsystem-invalid.rs - [ ] writing-to-immutable-vec.rs - [ ] wrong-mul-method-signature.rs - [ ] wrong-ret-type.rs - [ ] xc-private-method.rs - [ ] xc-private-method2.rs - [ ] xcrate-private-by-default.rs - [ ] xcrate-unit-struct.rs
Mark-Simulacrum commented 6 years ago

Has the relative performance of compile-fail vs. UI tests been evaluated? I worry that we'd be hurting our merge times if there's too much of a regression. I doubt it's anything serious, though, so no need to block this.

Zoxc commented 6 years ago

Why are we doing this when compile-fail are easier to use, more readable and maintainable?

estebank commented 6 years ago

Has the relative performance of compile-fail vs. UI tests been evaluated?

I don't think anyone has (including me), but my gut feeling is that the difference isn't big enough to make a dent. I'll try to keep track of it though, as well as investigate any performance enhancements we might be able to make to the test suite itself.

Why are we doing this when compile-fail are easier to use, more readable and maintainable?

I could debate all three points:

1) more maintainable: it's relative, as running the script will keep the output up to date with any change 2) more readable: in isolation, they might be, but the diffs of ui tests are much easier and intuitive to track for reviewers and will also expose unintended consequences across the entire test suite 3) easier to use: they are in a way, but I've encountered multiple cases of tests that were not actually being tested, as the line of output was a comment instead of an actual check. I've also seen cases of changes affecting unrelated existing test cases not being picked up as happening because the test case was ignoring the new notes, for example. The only place where inline tests are a clear winner in my opinion is when needing to have comments adding context to the compiler output.

Beyond those three points, we want to add support for the current inline tests to ui tests.

There is another underlying reason, witch I haven't stated so far: I want to be able to audit the compiler output in it's totality in order to find common places for improvement, to write down unifying guidelines and applying them to any inconsistent output. Having only ui tests makes doing this on a comprehensive way much easier.

petrochenkov commented 6 years ago

I tried to convert everything once and encountered two issues to solve

Most of tests still can be converted though.

I think it's critical to implement and enable checking of //~ ERROR message in UI tests before mass-converting. For many tests the whole point of the test is to ensure that some lines produce errors and other don't (specific message details are less important), UI test doesn't indicate any human-written expectations on the output, you can easily regenerate the .error file and miss a bug.

GuillaumeGomez commented 6 years ago

It seems like a really strange idea...

estebank commented 6 years ago

Most of tests still can be converted though.

I'm counting on that.

you can easily regenerate the .error file and miss a bug.

But it should be easier for reviewers to catch them when they occur, IMO.

It seems like a really strange idea...

How's so?

GuillaumeGomez commented 6 years ago

The goal of the compile-fail tests is different than the ui tests'. The first one is to ensure the expected error(s) come(s) out, even if the output changes whereas the second is to watch over the compiler output. That's why it seems strange to me that we're trying to merge the both of them.

petrochenkov commented 6 years ago

@estebank

you can easily regenerate the .error file and miss a bug.

But it should be easier for reviewers to catch them when they occur, IMO.

It's very difficult to write new compile-fail style tests testing more than one error without support of //~ ERROR, I tried it. (A typical example is exhaustively testing some minor feature, e.g. https://github.com/rust-lang/rust/blob/master/src/test/compile-fail/trait-item-privacy.rs) You have to look at the wall of text in the .stderr file and try to manually find lines corresponding to the original test file, it's very error-prone, you need inline //~ERROR annotations in the original file to have any kind of reliability.

GuillaumeGomez commented 6 years ago

Which seems very complicated in case there are multiple lines for one error (help, notes, suggestions...).

Zoxc commented 6 years ago

Do we have a way to regenerate these tests on Windows? Also we need to document how to regenerate the tests somewhere discoverable, perhaps in the output of tests themselves? I'd also prefer just the diff of output be printed. These tests seem quite noisy.

GuillaumeGomez commented 6 years ago

cc @pnkfelix @nikomatsakis (I precise again I'm against this change.)

pnkfelix commented 6 years ago

I think the compiler team should discuss: 1. whether we want to go in this direction, and 2. if we do want to go in this direction, what prerequisites need to be met (e.g., consider @petrochenkov 's comment that we should implement and enable checking of //~ ERROR message in UI tests before mass-converting).

nikomatsakis commented 6 years ago

My opinion:

  1. I'd still like to transition to ui tests.
    • They test the thing we really care about: the compiler's output.
    • They catch small bugs (e.g., spans that become off by one character, or weird artifacts in the compiler output) that would otherwise be invisible. Indeed, @petrochenkov's comment that the order in which we emit errors is not stable is a kind of example of this. This seems like undesirable behavior to me.
    • It is much easier to judge the impact of a PR on the error messages that users will see.
  2. We should extend the test runner for ui tests to validate //~ ERROR annotations.
    • I think we should do this first.
    • I also think it need not support the full range of NOTE etc crap-ola. That stuff is in the reference. The goal of //~ ERROR annotations should be allow the author to emphasize which cases are expected to error out and which ones are not, without having to "cross-reference" the stderr. (Basically what @petrochenkov was describing here.)
    • I would not make //~ ERROR annotations mandatory, however, since for many tests (those with a single error, etc), they don't seem to serve much purpose.
  3. We should also permit run-pass tests in the ui directory; I forget if we did this already yet, but I often want to group together "successful" and "failed" tests for a feature, and I hate having to spread them across directories right now.
  4. The point about not supporting revisions is interesting. Overall, I'm of mixed minds about the whole revision thing, but they are certainly useful for incremental testing. They are kind of a pain to setup though and they make running the test afterwards more awkward too.
  5. We should rewrite the script that updates reference files in Rust so it is portable. Easy-peezy. Maybe make it something like ./x.py update-reference-files

(I wish we had a lighterweight way to run the test runner, incidentally, without e.g. invoking it from ./x.py. But I digress.)

Phlosioneer commented 6 years ago

@nikomatsakis Where is the test runner for ui? I've looked in the bootstrap folder and I can't figure out the execution path when passing in the "test" argument. I'd like to help and contribute here, because it's labeled E-EASY; I'm not really familiar with the compiler but I want to learn.

Edit: Found the ui test runner and the compile-fail test runner. I'm going to do my best to understand what they're doing.

Phlosioneer commented 6 years ago

Alright, I've upgraded the test runner for ui to parse test commands. That's broken about 85 tests that have either:

I'm going through and fixing each one right now. This might take some time.

Phlosioneer commented 6 years ago

Also, there doesn't appear to be any way to check "did you mean" stuff using commands... it's categorized by the json as kind: None, but there's no command //~ NONE.

I'm just leaving them in as comments; they're still checked by stderr formatting diffs.

Phlosioneer commented 6 years ago

There's 78 ui tests to fix, and a few features and special cases need to be added to my ui test runner code. Here's my work-in-progress stuff: https://github.com/Phlosioneer/rust

Should I set up a pull request and just let it sit there while I work on this, for feedback? Or should I wait until I'm actually ready to submit the code?

nikomatsakis commented 6 years ago

@Phlosioneer

I'm going through and fixing each one right now. This might take some time.

You are awesome. Thank you.

Also, there doesn't appear to be any way to check "did you mean" stuff using commands... it's categorized by the json as kind: None, but there's no command //~ NONE.

I had expected us not to parse json anymore but instead to go back to scraping from the output (which we used to do before we parsed JSON). Are you compiling everything twice? (I guess I can check your branch.)

nikomatsakis commented 6 years ago

@Phlosioneer

Opening up a [WIP] PR is perfectly ok, it's often easier to give feedback that way. You can put r? @nikomatsakis if you want.

nikomatsakis commented 6 years ago

@rfcbot fcp merge

I'd like to propose transition compile-fail (and eventually run-pass) to UI tests, subject to the conditions that I described here. In particular, subject to the conditions that //~ ERROR annotations are checked in some fashion, and perhaps that we rewrite the "update reference files" tool in pure Rust so that it can be used across platforms.

I've made my "positive" case before, in [this internals thread]. It is very similar to what @estebank had to say.

@rust-lang/compiler, feel free to tell me why this is such a terrible idea. =)

rfcbot commented 6 years ago

Team member @nikomatsakis has proposed to merge this. The next step is review by the rest of the tagged teams:

No concerns currently listed.

Once a majority of reviewers approve (and none object), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!

See this document for info about what commands tagged team members can give me.

nrc commented 6 years ago

I'm in favour but only if we can make ui tests really lightweight to use and document that well - I feel atm that writing a new UI test or updating an existing one (or like 50 of them at once) is a real pain compared to the existing compile-fail tests. This might be because I don't know how to do it, but then we need better docs.

estebank commented 6 years ago

@nrc, updating existing and creating new ui output files can be done using update-all-references.sh.

The difficulty of it lies when creating new ui tests as you end up testing a bunch of output you don't care about in that single test. Also, some ui output is not entirely stable across targets.

Phlosioneer commented 6 years ago

@estebank: while doing the migration, I’ve found that almost a third of the ui tests are broken because of update-all-references.sh: either the “expected output” doesn’t match the comments in the file anymore, or there were effectively no comments in the file that described what was expected.

Regardless of whether we decide to move forward with merging the ui tests and some compile-fail tests, we need to rethink the current way of updating ui tests and/or the way these tests execute.

nikomatsakis commented 6 years ago

@Phlosioneer

I’ve found that almost a third of the ui tests are broken because of update-all-references.sh: either the “expected output” doesn’t match the comments in the file anymore, or there were effectively no comments in the file that described what was expected.

That's not surprising at all -- this always happens when things aren't enforced. Put another way, in the UI tests at present, the comments cannot be considered meaningful, which is why we need the tool you are writing. =)

nikomatsakis commented 6 years ago

@nrc

I feel atm that writing a new UI test or updating an existing one (or like 50 of them at once) is a real pain compared to the existing compile-fail tests.

Can you say a bit more? I feel sort of exactly the opposite, though I do think we should rewrite the tool for generating them in Rust so that it's portable etc. Another thing that would be really useful is something you can use to pipe the compiler's output (when running by hand) and regenerate the reference:

rustc some_file.rs | ui-reference > some_file.stderr
nikomatsakis commented 6 years ago

@Phlosioneer in any case, how are things going? I'd love to see this improved ui test runner happen! Have you had any time to work on it? Anything blocking you? Feel free to check in on gitter as well.

Phlosioneer commented 6 years ago

I've not been working on it - it's really demoralizing to see hundreds of errors, go to fix an error, and realize the test is broken and needs its comments re-written.

I think that I could just get the checker itself working, and then pass this on to someone else. The task is much bigger than I wanted to get involved with. I'll have time within the next week or so to fix my patch - I didn't really understand the difference between the json approach that the compile-fail tests used and the pattern-finding approach that was in the code but unused. Now I see the value in using patterns for this.

However, that means 100% of the comments in the ui tests are meaningless, as they were written in the style of the compile-fail tests, assuming json-output-parsing.

nikomatsakis commented 6 years ago

@Phlosioneer that sounds fine -- one option would be to mass rename the comments in the existing tests to use some other notation, e.g., //TODO~, and then get a few simple tests passing. We can then work through the backlog separately.

Phlosioneer commented 6 years ago

That sounds like a good plan.

nikomatsakis commented 6 years ago

@Phlosioneer

However, that means 100% of the comments in the ui tests are meaningless, as they were written in the style of the compile-fail tests, assuming json-output-parsing.

I'm not sure I follow this. The compile-fail tests were originally written by scraping the output, and then ported to do json output parsing (and in fact we bent over to accommodate the older style). It seems likely that if we can reproduce the same style of line number information, we'll be all set.

I think an open question though is to what extend it's important to be able to add verified annotations for anything other than the "main error". e.g., do we need to be able to add the //~ NOTE sort of things? It seems like the stderr captures those suitably, to me, but I'd be curious to know what others thing. (@petrochenkov, do you have an opinion?)

Phlosioneer commented 6 years ago

Perhaps I have a biased view, having focused on the things with errors; but it seemed to me that most tests used the json style and completely scrapped the older style.

And as to your question: I would be inclined to try to move as much as possible away from the stdout-comparison stuff, which would mean using //~ NOTE and friends extensively. I think there are some very clear cases where people simply ignored the errors caused by UI changes and instead just ran the script to silence all the errors.

petrochenkov commented 6 years ago

@nikomatsakis

I think an open question though is to what extend it's important to be able to add verified annotations for anything other than the "main error". e.g., do we need to be able to add the //~ NOTE sort of things? It seems like the stderr captures those suitably, to me, but I'd be curious to know what others thing. (@petrochenkov, do you have an opinion?)

I agree that ERROR and probably WARN should be checked, and NOTE/HELP and others shouldn't.

oli-obk commented 6 years ago

So I pretty much got this working. I agree on the update-all-references being a major pain. I think compiletest should handle that instead of a weird script that does't work for ui-fulldeps and requires rerunning all tests + the script twice in some cases.

My preference would be something along the lines of ./x.py test src/test/ui --overwrite

oli-obk commented 6 years ago

It has been merged. Moving tests from compile-fail to ui is now as easy as described in the initial issue post. Any tests that cannot be moved to ui due to compiler HashMap orderings should get their own issue so we can fix it. most often this just needs to delay reporting the issue until after the current compiler phase is finished.

est31 commented 6 years ago

I've made a PR to move most of the feature gate tests from cfail to ui/: #46532

petrochenkov commented 6 years ago

cc https://github.com/rust-lang/rust/pull/46641 (Move compile-fail tests with NOTE/HELP annotations to UI)

petrochenkov commented 6 years ago

cc https://github.com/rust-lang/rust/issues/46643 (Diffs from UI tests are noisy when line numbers change)

rfcbot commented 6 years ago

:bell: This is now entering its final comment period, as per the review above. :bell:

rfcbot commented 6 years ago

:bell: This is now entering its final comment period, as per the review above. :bell:

rfcbot commented 6 years ago

The final comment period is now complete.

nikomatsakis commented 6 years ago

Seems like we have all the features we need now to do this, right? Also, the workflow for ui tests -- thanks to --bless -- is now wicked convenient.

nikomatsakis commented 6 years ago

I would like to re-raise this issue in importance. We have great tooling for comparing the AST and MIR borrow checkers, but it is ALL based on ui tests. Getting rid of compile-fail would go a long way towards increasing my confidence.

nikomatsakis commented 6 years ago

As such, I am marking this as an NLL Milestone issue.

davidtwco commented 6 years ago

I'm currently taking a stab at this, will self-assign.

estebank commented 6 years ago

@davidtwco I'd advice doing it piece meal, not more than a couple hundred at a time, for your sanity's sake. You'll find that there are some tests with platform dependent output, which will require using some of the more esoteric features of ui tests (literal replacement), but there're tons of low hanging fruit that only needs to be moved with no changes. Also, the more files you involve the harder it'll be for you to merge it back as things change in master.

davidtwco commented 6 years ago

This is completed as of #53196. As there are still some tests in compile-fail that weren't migrated for various reasons, I'm going to open some extra issues with the remaining work.

davidtwco commented 6 years ago

Submitted #53353, #53352 and #53351 as follow-ups.