rust/src/test/compile-fail
bors 6635fe7db4 auto merge of #15989 : pcwalton/rust/borrowck-pattern-guards, r=pnkfelix
the CFG for match statements.

There were two bugs in issue #14684. One was simply that the borrow
check didn't know about the correct CFG for match statements: the
pattern must be a predecessor of the guard. This disallows the bad
behavior if there are bindings in the pattern. But it isn't enough to
prevent the memory safety problem, because of wildcards; thus, this
patch introduces a more restrictive rule, which disallows assignments
and mutable borrows inside guards outright.

I discussed this with Niko and we decided this was the best plan of
action.

This breaks code that performs mutable borrows in pattern guards. Most
commonly, the code looks like this:

    impl Foo {
        fn f(&mut self, ...) {}
        fn g(&mut self, ...) {
            match bar {
                Baz if self.f(...) => { ... }
                _ => { ... }
            }
        }
    }

Change this code to not use a guard. For example:

    impl Foo {
        fn f(&mut self, ...) {}
        fn g(&mut self, ...) {
            match bar {
                Baz => {
                    if self.f(...) {
                        ...
                    } else {
                        ...
                    }
                }
                _ => { ... }
            }
        }
    }

Sometimes this can result in code duplication, but often it illustrates
a hidden memory safety problem.

Closes #14684.

[breaking-change]

r? @pnkfelix
2014-07-29 17:41:41 +00:00
..
mod_file_disambig_aux
access-mode-in-closures.rs
ambig_impl_2_exe.rs
ambig_impl_bounds.rs
ambig_impl_unify.rs
ambig-default-method.rs
arg-count-mismatch.rs
arg-type-mismatch.rs
asm-gated.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
assign-imm-local-twice.rs
assign-to-method.rs
assignment-operator-unimplemented.rs
attempted-access-non-fatal.rs
attr-bad-crate-attr.rc
attr-bad-meta.rs
attr-before-ext.rs
attr-before-let.rs
attr-before-stmt.rs
attr-dangling-in-fn.rs
attr-dangling-in-mod.rs
attr.rs librustc: Feature gate lang items and intrinsics. 2014-06-23 23:28:28 -07:00
attrs-after-extern-mod.rs
auto-ref-slice-plus-ref.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
autoderef-full-lval.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
bad-bang-ann-3.rs
bad-bang-ann.rs
bad-char-literals.rs
bad-const-type.rs
bad-crate-id2.rs rustc: Default #[crate_name] on input, not output 2014-07-05 12:46:42 -07:00
bad-crate-id.rs test: Fix tests for crate_id removal 2014-07-05 12:46:42 -07:00
bad-env-capture2.rs
bad-env-capture3.rs
bad-env-capture.rs
bad-expr-lhs.rs
bad-expr-path2.rs
bad-expr-path.rs
bad-extern-link-attrs.rs
bad-main.rs
bad-match.rs
bad-method-typaram-kind.rs
bad-mid-path-type-params.rs librustc: Feature gate lang items and intrinsics. 2014-06-23 23:28:28 -07:00
bad-module.rs
bad-name.rs
bad-type-env-capture.rs
bad-value-ident-false.rs
bad-value-ident-true.rs
bang-tailexpr.rs
bind-by-move-neither-can-live-while-the-other-survives-1.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
bind-by-move-no-sub-bindings-fun-args.rs librustc: Check function argument patterns for legality of by-move 2014-06-24 17:23:41 -07:00
bind-by-move-no-sub-bindings.rs
bind-struct-early-modifiers.rs libsyntax: Disallow struct literals after if, while, match, and 2014-06-23 15:39:29 -07:00
binop-bitxor-str.rs
binop-logic-float.rs
binop-logic-int.rs
binop-mul-bool.rs
binop-typeck.rs
block-coerce-no-2.rs
block-coerce-no.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
block-must-not-have-result-do.rs
block-must-not-have-result-res.rs
block-must-not-have-result-while.rs
bogus-tag.rs
borrowck-and-init.rs
borrowck-anon-fields-struct.rs
borrowck-anon-fields-tuple.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-anon-fields-variant.rs
borrowck-array-double-move.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-assign-comp-idx.rs
borrowck-assign-comp.rs
borrowck-assign-to-andmut-in-aliasable-loc.rs
borrowck-assign-to-andmut-in-borrowed-loc.rs
borrowck-assign-to-constants.rs
borrowck-auto-mut-ref-to-immut-var.rs
borrowck-autoref-3261.rs
borrowck-bad-nested-calls-free.rs librustc: Remove cross-borrowing of Box<T> to &T from the language, 2014-07-17 14:05:36 -07:00
borrowck-bad-nested-calls-move.rs librustc: Remove cross-borrowing of Box<T> to &T from the language, 2014-07-17 14:05:36 -07:00
borrowck-block-unint.rs
borrowck-borrow-from-owned-ptr.rs
borrowck-borrow-from-stack-variable.rs
borrowck-borrow-from-temporary.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
borrowck-borrow-immut-deref-of-box-as-mut.rs librustc: Remove outdated reference to ~ and @ 2014-06-24 05:02:53 -07:00
borrowck-borrow-immut-deref-of-gc-as-mut.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
borrowck-borrow-mut-base-ptr-in-aliasable-loc.rs
borrowck-borrow-mut-object-twice.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
borrowck-borrow-overloaded-auto-deref-mut.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
borrowck-borrow-overloaded-auto-deref.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
borrowck-borrow-overloaded-deref-mut.rs
borrowck-borrow-overloaded-deref.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
borrowck-borrowed-uniq-rvalue-2.rs librustc: Put #[unsafe_destructor] behind a feature gate. 2014-06-20 14:24:31 -07:00
borrowck-borrowed-uniq-rvalue.rs
borrowck-break-uninit-2.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-break-uninit.rs
borrowck-call-is-borrow-issue-12224.rs
borrowck-call-method-from-mut-aliasable.rs
borrowck-call-sendfn.rs
borrowck-closures-mut-and-imm.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-closures-mut-of-imm.rs
borrowck-closures-two-mut.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-closures-unique.rs
borrowck-closures-use-after-free.rs librustc: Remove cross-borrowing of Box<T> to &T from the language, 2014-07-17 14:05:36 -07:00
borrowck-field-sensitivity.rs Make analyze_move_out_from more field-sensitive 2014-06-13 20:48:09 -07:00
borrowck-forbid-static-unsafe-interior.rs std: Stabilize unit, bool, ty, tuple, arc, any 2014-07-26 13:12:20 -07:00
borrowck-if-no-else.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-if-with-else.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-imm-ref-to-mut-rec-field-issue-3162-c.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-init-in-called-fn-expr.rs
borrowck-init-in-fn-expr.rs
borrowck-init-in-fru.rs
borrowck-init-op-equal.rs
borrowck-init-plus-equal.rs
borrowck-insert-during-each.rs
borrowck-issue-2657-1.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-issue-2657-2.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-issue-14498.rs
borrowck-lend-flow-if.rs librustc: Remove cross borrowing from mutable Boxes to &mut. 2014-06-24 23:14:42 -07:00
borrowck-lend-flow-loop.rs librustc: Remove cross-borrowing of Box<T> to &T from the language, 2014-07-17 14:05:36 -07:00
borrowck-lend-flow-match.rs librustc: Disallow mutation and assignment in pattern guards, and modify 2014-07-25 15:26:21 -07:00
borrowck-lend-flow.rs librustc: Remove cross borrowing from mutable Boxes to &mut. 2014-06-24 23:14:42 -07:00
borrowck-let-suggestion.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-loan-blocks-move-cc.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
borrowck-loan-blocks-move.rs
borrowck-loan-blocks-mut-uniq.rs librustc: Remove cross-borrowing of Box<T> to &T from the language, 2014-07-17 14:05:36 -07:00
borrowck-loan-in-overloaded-op.rs
borrowck-loan-local-as-both-mut-and-imm.rs
borrowck-loan-rcvr-overloaded-op.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
borrowck-loan-rcvr.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
borrowck-loan-vec-content.rs
borrowck-managed-pointer-deref-scope.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
borrowck-match-binding-is-assignment.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-move-by-capture.rs
borrowck-move-error-with-note.rs libsyntax: Disallow struct literals after if, while, match, and 2014-06-23 15:39:29 -07:00
borrowck-move-from-subpath-of-borrowed-path.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-move-from-unsafe-ptr.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
borrowck-move-in-irrefut-pat.rs
borrowck-move-moved-value-into-closure.rs
borrowck-move-mut-base-ptr.rs
borrowck-move-out-of-overloaded-auto-deref.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-move-out-of-overloaded-deref.rs
borrowck-move-out-of-static-item.rs
borrowck-move-out-of-struct-with-dtor.rs libsyntax: Disallow struct literals after if, while, match, and 2014-06-23 15:39:29 -07:00
borrowck-move-out-of-tuple-struct-with-dtor.rs
borrowck-move-out-of-vec-tail.rs
borrowck-move-subcomponent.rs
borrowck-multiple-captures.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-mut-addr-of-imm-var.rs
borrowck-mut-borrow-of-mut-base-ptr.rs
borrowck-mut-slice-of-imm-vec.rs
borrowck-mutate-in-guard.rs librustc: Disallow mutation and assignment in pattern guards, and modify 2014-07-25 15:26:21 -07:00
borrowck-no-cycle-in-exchange-heap.rs
borrowck-object-lifetime.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
borrowck-object-mutability.rs
borrowck-or-init.rs
borrowck-overloaded-call.rs librustc: Implement unboxed closures with mutable receivers 2014-07-18 09:01:37 -07:00
borrowck-overloaded-index-2.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
borrowck-overloaded-index.rs Borrow checking for overloaded indexing 2014-07-15 09:05:06 +12:00
borrowck-pat-reassign-binding.rs
borrowck-preserve-box-in-field.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
borrowck-preserve-box-in-uniq.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
borrowck-preserve-box.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
borrowck-preserve-cond-box.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
borrowck-preserve-expl-deref.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
borrowck-reborrow-from-mut.rs
borrowck-reborrow-from-shorter-lived-andmut.rs
borrowck-ref-into-rvalue.rs
borrowck-ref-mut-of-imm.rs
borrowck-report-with-custom-diagnostic.rs
borrowck-return.rs
borrowck-struct-update-with-dtor.rs
borrowck-swap-mut-base-ptr.rs
borrowck-unary-move.rs
borrowck-uninit-after-item.rs
borrowck-uninit-in-assignop.rs
borrowck-uninit.rs
borrowck-uniq-via-lend.rs librustc: Remove cross-borrowing of Box<T> to &T from the language, 2014-07-17 14:05:36 -07:00
borrowck-use-in-index-lvalue.rs rustc: Remove ~[T] from the language 2014-06-11 15:02:17 -07:00
borrowck-use-mut-borrow.rs Add new tests for uses of mutably borrowed paths 2014-06-13 20:48:10 -07:00
borrowck-vec-pattern-element-loan.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
borrowck-vec-pattern-loan-from-mut.rs Adapt test case to match current set of emitted warnings. (or lack 2014-06-18 16:44:21 +02:00
borrowck-vec-pattern-move-tail.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-vec-pattern-nesting.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
borrowck-vec-pattern-tail-element-loan.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
borrowck-while-break.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
borrowck-while-cond.rs
borrowck-while.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
box-static-bound.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
break-outside-loop.rs
builtin-superkinds-double-superkind.rs
builtin-superkinds-in-metadata.rs
builtin-superkinds-self-type.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
builtin-superkinds-simple.rs
builtin-superkinds-typaram-not-send.rs
by-move-pattern-binding.rs
byte-literals.rs Add a b'x' byte literal of type u8. 2014-06-17 23:41:03 +02:00
byte-string-literals.rs Add a b"xx" byte string literal of type &'static [u8]. 2014-06-17 23:43:18 +02:00
call-extern-trait-as-function.rs
capture1.rs
cast-as-bool.rs
cast-from-nil.rs
cast-to-bare-fn.rs
cast-to-nil.rs
changing-crates.rs
check-static-immutable-mut-slices.rs
check-static-values-constraints.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
circular_modules_hello.rs
circular_modules_main.rs
class-cast-to-trait.rs
class-implements-bad-trait.rs
class-method-missing.rs
class-missing-self.rs
cleanup-rvalue-scopes-cf.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
closure-bounds-cant-promote-superkind-in-struct.rs
closure-bounds-not-builtin.rs
closure-bounds-static-cant-capture-borrowed.rs
closure-bounds-subtype.rs
closure-reform-bad.rs
closure-that-fails.rs
coerce-bare-fn-to-closure-and-proc.rs
coerce-unsafe-to-closure.rs
coherence_inherent_cc.rs
coherence_inherent.rs
column-offset-1-based.rs
comm-not-freeze.rs
concat.rs Add a b"xx" byte string literal of type &'static [u8]. 2014-06-17 23:43:18 +02:00
conflicting-implementations-aux.rs
conflicting-implementations.rs
const-block-non-item-statement.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
const-cast-different-types.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
const-cast-wrong-type.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
const-recursive.rs
copy-a-resource.rs
core-tls-store-pointer.rs rustc: Obsolete the @ syntax entirely 2014-06-14 10:45:37 -07:00
crate-name-mismatch.rs rustc: Mix extra-filename in temp outputs 2014-07-18 18:09:08 -07:00
crateresolve1.rs
dead-code-ret.rs
deref-non-pointer.rs
deriving-bounds.rs
deriving-meta-unknown-trait.rs
deriving-no-inner-impl-error-message.rs
deriving-primitive.rs
deriving-span-Clone-enum-struct-variant.rs
deriving-span-Clone-enum.rs
deriving-span-Clone-struct.rs
deriving-span-Clone-tuple-struct.rs
deriving-span-Default-struct.rs
deriving-span-Default-tuple-struct.rs
deriving-span-Hash-enum-struct-variant.rs
deriving-span-Hash-enum.rs
deriving-span-Hash-struct.rs
deriving-span-Hash-tuple-struct.rs
deriving-span-PartialEq-enum-struct-variant.rs
deriving-span-PartialEq-enum.rs
deriving-span-PartialEq-struct.rs
deriving-span-PartialEq-tuple-struct.rs
deriving-span-PartialOrd-enum-struct-variant.rs Implement RFC#28: Add PartialOrd::partial_cmp 2014-06-29 21:42:09 -07:00
deriving-span-PartialOrd-enum.rs Implement RFC#28: Add PartialOrd::partial_cmp 2014-06-29 21:42:09 -07:00
deriving-span-PartialOrd-struct.rs Implement RFC#28: Add PartialOrd::partial_cmp 2014-06-29 21:42:09 -07:00
deriving-span-PartialOrd-tuple-struct.rs Implement RFC#28: Add PartialOrd::partial_cmp 2014-06-29 21:42:09 -07:00
deriving-span-Rand-enum-struct-variant.rs
deriving-span-Rand-enum.rs
deriving-span-Rand-struct.rs
deriving-span-Rand-tuple-struct.rs
deriving-span-Show-enum-struct-variant.rs
deriving-span-Show-enum.rs
deriving-span-Show-struct.rs
deriving-span-Show-tuple-struct.rs
deriving-span-TotalEq-enum-struct-variant.rs
deriving-span-TotalEq-enum.rs
deriving-span-TotalEq-struct.rs
deriving-span-TotalEq-tuple-struct.rs
deriving-span-TotalOrd-enum-struct-variant.rs
deriving-span-TotalOrd-enum.rs
deriving-span-TotalOrd-struct.rs
deriving-span-TotalOrd-tuple-struct.rs
deriving-span-Zero-struct.rs
deriving-span-Zero-tuple-struct.rs
destructure-trait-ref.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
disallowed-deconstructing-destructing-struct-let.rs
disallowed-deconstructing-destructing-struct-match.rs
does-nothing.rs
drop-on-non-struct.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
drop-with-active-borrows-1.rs test: Add tests for issue #12223, "drop allowed while active borrows 2014-07-01 11:47:21 -07:00
drop-with-active-borrows-2.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
dup-struct-enum-struct-variant.rs librustc: Disallow modules and types from having the same name. 2014-07-07 10:54:32 -07:00
duplicate-visibility.rs
elided-test.rs
empty-impl-semicolon.rs
empty-linkname.rs
enum-and-module-in-same-scope.rs librustc: Disallow modules and types from having the same name. 2014-07-07 10:54:32 -07:00
enum-discrim-too-small.rs
enum-in-scope.rs
enum-to-float-cast.rs librustc: Forbid enum-to-float casts. 2014-06-13 11:23:47 -07:00
enums-pats-not-idents.rs
error-should-say-copy-not-pod.rs
estr-subtyping.rs
eval-enum.rs
explicit-call-to-dtor.rs
explicit-call-to-supertrait-dtor.rs
explicit-self-lifetime-mismatch.rs librustc: Implement the fully-expanded, UFCS form of explicit self. 2014-07-16 20:01:52 -07:00
export2.rs
export-fully-qualified.rs
export-import.rs
export-tag-variant.rs
export.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-expected-fn-or-brace.rs
extern-foreign-crate.rs
extern-main-fn.rs
extern-no-fn.rs
extern-wrong-value-type.rs
extoption_env-no-args.rs
extoption_env-not-string-literal.rs
extoption_env-too-many-args.rs
fail-simple.rs
feature-gate-intrinsics-and-lang-items.rs librustc: Feature gate lang items and intrinsics. 2014-06-23 23:28:28 -07:00
float-literal-inference-restrictions.rs
fn-bad-block-type.rs
fn-compare-mismatch.rs
fn-variance-1.rs
for-loop-bogosity.rs librustc: Stop desugaring for expressions and translate them directly. 2014-07-24 18:58:12 -07:00
for-loop-refutable-pattern-error-message.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
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 sync: Move underneath libstd 2014-06-11 10:00:43 -07:00
future_not_copyable.rs sync: Move underneath libstd 2014-06-11 10:00:43 -07:00
gated-bad-feature.rs
gated-concat_idents.rs
gated-default-type-param-usage.rs
gated-default-type-params.rs
gated-glob-imports.rs
gated-macro-rules.rs
gated-non-ascii-idents.rs
gated-plugin_registrar.rs
gated-simd.rs
gated-struct-enums.rs
gated-trace_macros.rs
generic-extern.rs
generic-impl-less-params-with-defaults.rs Introduce VecPerParamSpace and use it to represent sets of types and 2014-06-13 13:20:24 -04:00
generic-impl-more-params-with-defaults.rs Introduce VecPerParamSpace and use it to represent sets of types and 2014-06-13 13:20:24 -04:00
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-resolve1.rs
hidden-rt-injection2.rs Add tests that the injected runtime is inaccessible 2014-07-25 16:54:09 -07:00
hidden-rt-injection.rs Add tests that the injected runtime is inaccessible 2014-07-25 16:54:09 -07:00
hygienic-label-1.rs librustc: Fix the issue with labels shadowing variable names by making 2014-06-13 13:53:34 -07:00
hygienic-label-2.rs librustc: Fix the issue with labels shadowing variable names by making 2014-06-13 13:53:34 -07:00
hygienic-label-3.rs librustc: Fix the issue with labels shadowing variable names by making 2014-06-13 13:53:34 -07:00
hygienic-label-4.rs librustc: Fix the issue with labels shadowing variable names by making 2014-06-13 13:53:34 -07:00
if-branch-types.rs
if-typeck.rs
if-without-else-result.rs
ifmt-bad-arg.rs Special case for 0 arguments given in format! 2014-07-18 20:39:38 +02:00
ifmt-bad-format-args2.rs
ifmt-bad-format-args.rs
ifmt-unimpl.rs
ifmt-unknown-trait.rs
immut-function-arguments.rs
impl-bounds-checking.rs
impl-duplicate-methods.rs
implicit-method-bind.rs
import2.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
import3.rs
import4.rs
import-from-missing.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
import-from-path.rs
import-from-rename.rs
import-glob-0.rs
import-glob-circular.rs
import-glob-path.rs
import-glob-rename.rs
import-loop-2.rs
import-loop.rs
import.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
index_message.rs
indexing-requires-a-uint.rs
infinite-autoderef.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
infinite-instantiation.rs
infinite-tag-type-recursion.rs
infinite-vec-type-recursion.rs
inherit-struct1.rs
inherit-struct2.rs
inherit-struct3.rs
inherit-struct4.rs
inherit-struct5.rs
inherit-struct6.rs
inherit-struct7.rs
inherit-struct8.rs
inherit-struct9.rs
inner-static-type-parameter.rs
integer-literal-suffix-inference-2.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
integer-literal-suffix-inference-3.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
integer-literal-suffix-inference.rs
integral-indexing.rs rustc: Remove &str indexing from the language. 2014-07-01 19:12:29 -07:00
invalid-crate-type.rs
issue13359.rs
issue-897-2.rs
issue-897.rs
issue-1362.rs
issue-1448-2.rs
issue-1476.rs
issue-1655.rs
issue-1697.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
issue-1802-1.rs
issue-1802-2.rs
issue-1871.rs
issue-1900.rs
issue-1962.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
issue-2063-resource.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
issue-2063.rs std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00
issue-2111.rs Address review comments 2014-06-20 17:41:19 +02:00
issue-2149.rs
issue-2150.rs rustc: Remove ~[T] from the language 2014-06-11 15:02:17 -07:00
issue-2151.rs
issue-2281-part1.rs
issue-2330.rs
issue-2354-1.rs
issue-2354.rs
issue-2356.rs
issue-2478.rs
issue-2590.rs
issue-2611-4.rs
issue-2611-5.rs
issue-2718-a.rs
issue-2823.rs
issue-2848.rs
issue-2849.rs
issue-2937.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
issue-2951.rs
issue-2995.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
issue-3008-1.rs
issue-3008-2.rs
issue-3008-3.rs
issue-3021-b.rs
issue-3021-c.rs
issue-3021-d.rs
issue-3021.rs
issue-3036.rs
issue-3038.rs
issue-3044.rs
issue-3080.rs
issue-3096-1.rs
issue-3096-2.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
issue-3099-a.rs librustc: Disallow modules and types from having the same name. 2014-07-07 10:54:32 -07:00
issue-3099-b.rs librustc: Disallow modules and types from having the same name. 2014-07-07 10:54:32 -07:00
issue-3099.rs
issue-3154.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
issue-3214.rs
issue-3344.rs Implement RFC#28: Add PartialOrd::partial_cmp 2014-06-29 21:42:09 -07:00
issue-3477.rs
issue-3521-2.rs
issue-3521.rs
issue-3563.rs
issue-3601.rs
issue-3668-2.rs
issue-3668.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
issue-3680.rs
issue-3702-2.rs
issue-3707.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
issue-3763.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
issue-3779.rs
issue-3820.rs
issue-3907-2.rs rustc: catch impl X for Y where X is not a trait in resolve. 2014-06-23 17:38:32 +01:00
issue-3907.rs rustc: catch impl X for Y where X is not a trait in resolve. 2014-06-23 17:38:32 +01:00
issue-3953.rs
issue-3973.rs std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00
issue-3993-2.rs
issue-3993.rs
issue-4265.rs
issue-4321.rs Address review comments 2014-06-20 17:41:19 +02:00
issue-4335.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
issue-4366-2.rs
issue-4366.rs
issue-4517.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
issue-4523.rs
issue-4736.rs
issue-4935.rs
issue-4968.rs
issue-4972.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
issue-5035-2.rs rustc: catch impl X for Y where X is not a trait in resolve. 2014-06-23 17:38:32 +01:00
issue-5035.rs rustc: catch impl X for Y where X is not a trait in resolve. 2014-06-23 17:38:32 +01:00
issue-5060-fail.rs
issue-5062.rs
issue-5099.rs
issue-5100.rs
issue-5153.rs librustc: Allow the new UFCS explicit self in trait definitions, and 2014-07-16 23:16:12 -07:00
issue-5216.rs
issue-5239-1.rs
issue-5358-1.rs
issue-5439.rs
issue-5500-1.rs
issue-5543.rs
issue-5544-a.rs
issue-5544-b.rs
issue-5806.rs
issue-5844.rs
issue-5883.rs
issue-5927.rs
issue-5997-enum.rs
issue-5997-struct.rs
issue-6458-1.rs
issue-6458-2.rs
issue-6458-3.rs
issue-6458-4.rs
issue-6458.rs
issue-6596.rs
issue-6610.rs
issue-6642.rs
issue-6702.rs
issue-6738.rs
issue-6801.rs
issue-6804.rs
issue-6977.rs
issue-7013.rs Change prints: @T -> Gc<T> , ~T -> Box<T> 2014-06-16 18:16:01 -07:00
issue-7044.rs
issue-7061.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
issue-7092.rs Introduce VecPerParamSpace and use it to represent sets of types and 2014-06-13 13:20:24 -04:00
issue-7246.rs
issue-7364.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
issue-7573.rs
issue-7575.rs
issue-7663.rs
issue-8153.rs
issue-8208.rs
issue-8537.rs
issue-8727.rs
issue-9243.rs
issue-9575.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
issue-9725.rs Remove few FIXMEs 2014-06-24 17:23:16 -07:00
issue-9814.rs
issue-9957.rs
issue-10291.rs
issue-10392-2.rs
issue-10392.rs
issue-10398.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
issue-10401.rs
issue-10412.rs
issue-10465.rs
issue-10536.rs Fix ICE with nested macro_rules!-style macros 2014-07-03 12:54:51 -07:00
issue-10545.rs
issue-10636-1.rs
issue-10636-2.rs
issue-10656.rs
issue-10755.rs
issue-10764.rs
issue-10877.rs
issue-10991.rs Fix an ICE on a cast from an inferred nil to uint 2014-06-14 23:32:28 +02:00
issue-11154.rs
issue-11192.rs librustc: Remove cross-borrowing of Box<T> to &T from the language, 2014-07-17 14:05:36 -07:00
issue-11319.rs
issue-11493.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
issue-11515.rs
issue-11593.rs
issue-11680.rs
issue-11681.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
issue-11692.rs Add scaffolding for assigning alpha-numeric codes to rustc diagnostics 2014-07-11 00:32:00 +02:00
issue-11844.rs Introduce VecPerParamSpace and use it to represent sets of types and 2014-06-13 13:20:24 -04:00
issue-11873.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
issue-11925.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
issue-12041.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
issue-12116.rs
issue-12127.rs
issue-12187-1.rs Add a test case for #12187, which appears to have been fixed 2014-07-06 21:40:16 +02:00
issue-12187-2.rs Add a test case for #12187, which appears to have been fixed 2014-07-06 21:40:16 +02:00
issue-12369.rs
issue-12552.rs Add test for issue #12552 2014-06-28 09:30:44 +02:00
issue-12560-1.rs
issue-12560-2.rs
issue-12567.rs
issue-12612.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
issue-12796.rs
issue-12997-1.rs
issue-12997-2.rs
issue-13404.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
issue-13428.rs
issue-13446.rs
issue-13466.rs Introduce VecPerParamSpace and use it to represent sets of types and 2014-06-13 13:20:24 -04:00
issue-13482.rs Add unreachability detection for missized patterns of fixed size vectors 2014-06-20 17:08:57 +02:00
issue-13599.rs
issue-13641.rs
issue-14084.rs
issue-14092.rs
issue-14221.rs
issue-14254.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
issue-14285.rs Add tests for #12470 and #14285 2014-06-24 17:19:19 -07:00
issue-14303-enum.rs
issue-14303-fn-def.rs
issue-14303-fncall.rs
issue-14303-impl.rs
issue-14303-path.rs
issue-14303-struct.rs
issue-14303-trait.rs
issue-14541.rs librustc: Accept type aliases for structures in structure literals and 2014-07-04 17:07:31 -07:00
issue-14845.rs Rolling up PRs in the queue 2014-06-13 13:53:55 -07:00
issue-14915.rs Change prints: @T -> Gc<T> , ~T -> Box<T> 2014-06-16 18:16:01 -07:00
issue-15129.rs Fix #15129 2014-06-24 17:22:48 -07:00
issue-15167.rs librustc: Stop desugaring for expressions and translate them directly. 2014-07-24 18:58:12 -07:00
issue-15260.rs librustc: Don't ICE on binding same field multiple times in struct 2014-06-29 22:38:53 -07:00
issue-15896.rs Fix #15896 2014-07-25 00:44:35 +08:00
isuue-12470.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
keyword-as-as-identifier.rs
keyword-break-as-identifier.rs
keyword-do-as-identifier.rs
keyword-else-as-identifier.rs
keyword-enum-as-identifier.rs
keyword-extern-as-identifier.rs
keyword-false-as-identifier.rs
keyword-fn-as-identifier.rs
keyword-for-as-identifier.rs
keyword-if-as-identifier.rs
keyword-impl-as-identifier.rs
keyword-let-as-identifier.rs
keyword-loop-as-identifier.rs
keyword-match-as-identifier.rs
keyword-mod-as-identifier.rs
keyword-mut-as-identifier.rs
keyword-priv-as-identifier.rs
keyword-pub-as-identifier.rs
keyword-ref-as-identifier.rs
keyword-return-as-identifier.rs
keyword-self-as-identifier.rs
keyword-static-as-identifier.rs
keyword-struct-as-identifier.rs
keyword-super-as-identifier.rs
keyword-super.rs
keyword-trait-as-identifier.rs
keyword-true-as-identifier.rs
keyword-type-as-identifier.rs
keyword-typeof.rs
keyword-unsafe-as-identifier.rs
keyword-use-as-identifier.rs
keyword-while-as-identifier.rs
keyword.rs
kindck-copy.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
kindck-destructor-owned.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
kindck-impl-type-params-2.rs librustc: Check built-in trait bounds on implementations when direct 2014-07-25 00:50:35 -07:00
kindck-impl-type-params.rs librustc: Have the kind checker check sub-bounds in trait casts. 2014-07-03 12:54:51 -07:00
kindck-nonsendable-1.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
kindck-owned-trait-contains.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
kindck-send.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
lex-bad-char-literals.rs testsuite: merge some lexer testcases 2014-07-09 00:06:28 -07:00
lex-bad-numeric-literals.rs test: simplify numeric literal cfail tests 2014-07-09 00:06:28 -07:00
lex-bad-token.rs testsuite: merge some lexer testcases 2014-07-09 00:06:28 -07:00
lex-bare-cr-string-literal-doc-comment.rs Handle CRLF properly in the lexer 2014-06-18 21:07:58 -07:00
lifetime-elision-return-type-requires-explicit-lifetime.rs small typo 2014-07-20 04:57:49 -07:00
lifetime-inference-give-expl-lifetime-param-2.rs
lifetime-inference-give-expl-lifetime-param.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
lifetime-no-keyword.rs
lifetime-obsoleted-self.rs
linkage1.rs
linkage2.rs
linkage3.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
lint-change-warnings.rs
lint-ctypes-enum.rs
lint-ctypes.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
lint-dead-code-1.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
lint-dead-code-2.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
lint-dead-code-3.rs privacy: Add publically-reexported foreign item to exported item set 2014-07-21 09:54:59 -07:00
lint-dead-code-4.rs
lint-directives-on-use-items-issue-10534.rs
lint-forbid-attr.rs Test lint plugins 2014-06-24 11:36:28 -07:00
lint-forbid-cmdline.rs Test lint plugins 2014-06-24 11:36:28 -07:00
lint-heap-memory.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
lint-impl-fn.rs
lint-managed-heap-memory.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
lint-misplaced-attr.rs
lint-missing-doc.rs
lint-non-camel-case-types.rs rustc: Exclude #[repr(C)] from non camel case 2014-07-10 10:19:38 -07:00
lint-non-snake-case-functions.rs
lint-non-uppercase-statics.rs
lint-obsolete-attr.rs
lint-output-format.rs Add stability inheritance 2014-06-18 22:22:26 -07:00
lint-owned-heap-memory.rs
lint-qualification.rs
lint-raw-ptr-deriving.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
lint-stability.rs stability lint: ignore code from macro expansion 2014-07-16 13:53:06 -07:00
lint-type-limits.rs
lint-type-overflow.rs Add range lint for float literals, fixing #10934 2014-07-10 09:38:15 +02:00
lint-unknown-attr.rs
lint-unknown-feature.rs
lint-unnecessary-casts.rs
lint-unnecessary-parens.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
lint-unsafe-block.rs
lint-unused-import-tricky-globs.rs
lint-unused-import-tricky-names.rs
lint-unused-imports.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
lint-unused-mut-self.rs librustc: Allow the new UFCS explicit self in trait definitions, and 2014-07-16 23:16:12 -07:00
lint-unused-mut-variables.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
lint-unused-unsafe.rs rustc: Remove ~[T] from the language 2014-06-11 15:02:17 -07:00
lint-uppercase-variables.rs std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00
lint-visible-private-types.rs
liveness-assign-imm-local-in-loop.rs
liveness-assign-imm-local-in-op-eq.rs
liveness-assign-imm-local-with-init.rs
liveness-bad-bang-2.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
liveness-closure-require-ret.rs
liveness-dead.rs
liveness-forgot-ret.rs
liveness-issue-2163.rs tests: Remove uses of advance. 2014-07-09 15:51:58 -07:00
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 librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
liveness-use-after-move.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
liveness-use-after-send.rs
log-syntax-gate.rs
loop-does-not-diverge.rs
lub-if.rs
lub-match.rs
macro-bad-delimiter-ident.rs
macro-incomplete-parse.rs
macro-inner-attributes.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
macro-local-data-key-priv.rs
macro-mismatched-delim-brace-paren.rs
macro-mismatched-delim-paren-brace.rs
macro-outer-attributes.rs
macro-with-seps-err-msg.rs
macros-nonfatal-errors.rs Deprecate the bytes!() macro. 2014-06-18 17:02:22 -07:00
main-wrong-location.rs
main-wrong-type-2.rs
main-wrong-type.rs
map-types.rs
marker-no-copy.rs
marker-no-send.rs
marker-no-share.rs
match-arm-statics.rs Add support for patterns referencing non-trivial statics 2014-07-19 01:09:22 +02:00
match-arrows-block-then-binop.rs
match-ill-type1.rs
match-ill-type2.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
match-join.rs
match-non-exhaustive.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
match-pattern-field-mismatch-2.rs
match-pattern-field-mismatch.rs
match-range-fail-dominate.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
match-range-fail.rs
match-static-const-lc.rs
match-struct.rs libsyntax: Disallow struct literals after if, while, match, and 2014-06-23 15:39:29 -07:00
match-tag-nullary.rs
match-tag-unary.rs
match-vec-fixed.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
match-vec-invalid.rs
match-vec-mismatch-2.rs
match-vec-mismatch.rs
match-vec-unreachable.rs
method-call-err-msg.rs
method-missing-call.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
minus-string.rs
missing-derivable-attr.rs
missing-main.rs
missing-return.rs
mod_file_aux.rs
mod_file_correct_spans.rs
mod_file_disambig_aux.rs
mod_file_disambig.rs
mod_file_not_exist.rs
mod_file_not_owning_aux1.rs
mod_file_not_owning_aux2.rs
mod_file_not_owning.rs
mod_file_with_path_attr.rs
moves-based-on-type-access-to-field.rs
moves-based-on-type-block-bad.rs std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00
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 Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
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
multiline-comment-line-tracking.rs
multiple-main-2.rs Assign more diagnostic codes 2014-07-18 20:13:19 +02:00
multiple-main-3.rs Assign more diagnostic codes 2014-07-18 20:13:19 +02:00
multiple-plugin-registrars.rs
multitrait.rs std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00
mut-cant-alias.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
mut-cross-borrowing.rs librustc: Remove cross borrowing from mutable Boxes to &mut. 2014-06-24 23:14:42 -07:00
mut-not-freeze.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
mut-patterns.rs
mut-ptr-cant-outlive-ref.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
mutable-class-fields-2.rs
mutable-class-fields.rs
mutable-enum-indirect.rs
name-clash-nullary-2.rs
name-clash-nullary.rs
nested-ty-params.rs
new-box-syntax-bad.rs Stabilization for owned (now boxed) and cell 2014-07-13 12:52:51 -07:00
no_crate_type.rs
no_send-enum.rs
no_send-rc.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
no_send-struct.rs
no_share-enum.rs
no_share-rc.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
no_share-struct.rs
no-binary-float-literal.rs
no-capture-arc.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
no-hex-float-literal.rs
no-implicit-prelude-nested.rs std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00
no-implicit-prelude.rs std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00
no-reuse-move-arc.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
no-send-res-ports.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
no-unsafe-self.rs
noexporttypeexe.rs
nolink-with-link-args.rs
non-constant-enum-for-vec-repeat.rs
non-constant-expr-for-fixed-len-vec.rs
non-constant-expr-for-vec-repeat.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
non-copyable-void.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
non-exhaustive-match-nested.rs Change exhaustiveness analysis to permit multiple constructors per pattern 2014-07-02 18:27:12 +02:00
non-exhaustive-match.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
non-exhaustive-pattern-witness.rs Improve non-exhaustive pattern witnesses for structs with multiple fields 2014-07-07 22:00:34 +02:00
non-str-meta.rs
noncopyable-class.rs
nonscalar-cast.rs
not-a-pred.rs
not-enough-arguments.rs
not-utf8.bin
not-utf8.rs
object-does-not-impl-trait.rs
object-pointer-types.rs librustc: Allow the new UFCS explicit self in trait definitions, and 2014-07-16 23:16:12 -07:00
obsolete-tuple-struct-deref.rs
occurs-check-3.rs
occurs-check.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
omitted-arg-in-item-fn.rs
once-cant-call-twice-on-heap.rs sync: Move underneath libstd 2014-06-11 10:00:43 -07:00
once-cant-call-twice-on-stack.rs sync: Move underneath libstd 2014-06-11 10:00:43 -07:00
once-cant-move-out-of-non-once-on-stack.rs sync: Move underneath libstd 2014-06-11 10:00:43 -07:00
once-fn-subtyping.rs
or-patter-mismatch.rs
osx-frameworks.rs
output-type-mismatch.rs
overloaded-calls-bad.rs librustc: Implement unboxed closures with mutable receivers 2014-07-18 09:01:37 -07:00
overloaded-calls-nontuple.rs librustc: Implement unboxed closures with mutable receivers 2014-07-18 09:01:37 -07:00
oversized-literal.rs
owned-ptr-static-bound.rs Register new snapshots 2014-06-15 23:30:24 -07:00
paamayim-nekudotayim.rs
packed-struct-generic-transmute.rs
packed-struct-transmute.rs
pat-ref-enum.rs
pat-shadow-in-nested-binding.rs
pattern-error-continue.rs
pattern-macro-hygeine.rs
pattern-tyvar-2.rs
pattern-tyvar.rs
pinned-deep-copy.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
pptypedef.rs
prim-with-args.rs
priv-in-bad-locations.rs
privacy1.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
privacy2.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
privacy3.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
privacy4.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
privacy5.rs
privacy-ns1.rs
privacy-ns2.rs
privacy-struct-variant.rs
private-impl-method.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
proc-bounds.rs
proc-static-bound.rs librustc: Ensure that proc upvars have static lifetime. 2014-06-26 15:16:03 -07:00
qquote-1.rs
qquote-2.rs
raw-byte-string-eof.rs Add br##"xx"## raw byte string literals. 2014-06-17 23:43:18 +02:00
raw-byte-string-literals.rs Add br##"xx"## raw byte string literals. 2014-06-17 23:43:18 +02:00
raw-str-delim.rs
raw-str-unbalanced.rs
raw-str-unterminated.rs
recursion.rs
recursive-enum.rs
redundant-link-args.rs
refutable-pattern-errors.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
refutable-pattern-in-fn-arg.rs Address review comments 2014-06-20 17:41:19 +02:00
regionck-closure-lifetimes.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
regions-addr-of-arg.rs
regions-addr-of-self.rs
regions-addr-of-upvar-self.rs
regions-appearance-constraint.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
regions-bound-lists-feature-gate.rs Register new snapshots 2014-06-15 23:30:24 -07:00
regions-bounds.rs
regions-creating-enums3.rs
regions-creating-enums4.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
regions-creating-enums.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
regions-early-bound-error-method.rs
regions-early-bound-error.rs
regions-escape-bound-fn-2.rs
regions-escape-bound-fn.rs
regions-escape-loop-via-variable.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
regions-escape-loop-via-vec.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
regions-escape-via-trait-or-not.rs librustc: Match trait self types exactly. 2014-06-28 11:18:37 -07:00
regions-fn-bound.rs
regions-fn-subtyping-return-static.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
regions-fn-subtyping.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
regions-fns.rs
regions-free-region-ordering-callee.rs
regions-free-region-ordering-caller1.rs
regions-free-region-ordering-caller.rs
regions-free-region-ordering-incorrect.rs
regions-freevar.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
regions-glb-free-free.rs
regions-in-consts.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 librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
regions-infer-borrow-scope-too-big.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
regions-infer-borrow-scope-within-loop.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
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 Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
regions-infer-invariance-due-to-mutability-4.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
regions-infer-not-param.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
regions-infer-paramd-indirect.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
regions-infer-paramd-method.rs
regions-infer-region-in-fn-but-not-type.rs
regions-lifetime-of-struct-or-enum-variant.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
regions-name-duplicated.rs
regions-name-static.rs librustc: Fix the issue with labels shadowing variable names by making 2014-06-13 13:53:34 -07:00
regions-name-undeclared.rs
regions-nested-fns-2.rs
regions-nested-fns.rs
regions-out-of-scope-slice.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 librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
regions-ret.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
regions-return-stack-allocated-vec.rs
regions-steal-closure.rs
regions-trait-1.rs
regions-trait-2.rs
regions-trait-3.rs
regions-trait-variance.rs librustc: Implement lifetime elision. 2014-07-19 13:10:58 -07:00
regions-undeclared.rs
regions-var-type-out-of-scope.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
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
removed-syntax-closure-lifetime.rs
removed-syntax-const-item.rs
removed-syntax-enum-newtype.rs
removed-syntax-extern-const.rs
removed-syntax-field-let.rs
removed-syntax-field-semicolon.rs
removed-syntax-fixed-vec.rs
removed-syntax-fn-pure.rs
removed-syntax-fn-sigil.rs
removed-syntax-larrow-init.rs
removed-syntax-larrow-move.rs
removed-syntax-mode.rs
removed-syntax-mut-vec-expr.rs
removed-syntax-mut-vec-ty.rs
removed-syntax-ptr-lifetime.rs
removed-syntax-record.rs
removed-syntax-static-fn.rs
removed-syntax-uniq-mut-expr.rs
removed-syntax-uniq-mut-ty.rs
removed-syntax-with-1.rs
removed-syntax-with-2.rs
repeat_count.rs Test fixes from the rollup 2014-06-24 18:57:01 -07:00
repeat-to-run-dtor-twice.rs
required-lang-item.rs
reserved-be.rs
resolve_self_super_hint.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
resolve-inconsistent-binding-mode.rs
resolve-inconsistent-names.rs
resolve-priv-shadowing-pub.rs
resolve-type-param-in-item-in-trait.rs
resolve-unknown-trait.rs
ret-non-nil.rs
rustc-diagnostics-1.rs Add scaffolding for assigning alpha-numeric codes to rustc diagnostics 2014-07-11 00:32:00 +02:00
rustc-diagnostics-2.rs Add scaffolding for assigning alpha-numeric codes to rustc diagnostics 2014-07-11 00:32:00 +02:00
rustc-diagnostics-3.rs Add scaffolding for assigning alpha-numeric codes to rustc diagnostics 2014-07-11 00:32:00 +02:00
selftype-traittype.rs
seq-args.rs
shadowing-in-the-same-pattern.rs librustc: Forbid identifiers that shadow in the same pattern in let 2014-06-11 13:23:04 -07:00
simd-binop.rs
simd-experimental.rs
simd-type.rs
slightly-nice-generic-literal-messages.rs
spawn-non-nil-fn.rs
static-assert2.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
static-assert.rs
static-items-cant-move.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 Add support for patterns referencing non-trivial statics 2014-07-19 01:09:22 +02:00
static-mut-requires-unsafe.rs
static-priv-by-default2.rs
static-priv-by-default.rs
static-reference-to-fn-1.rs librustc: Make references to functions not have static lifetime. 2014-07-24 15:29:26 -07:00
static-reference-to-fn-2.rs librustc: Make references to functions not have static lifetime. 2014-07-24 15:29:26 -07:00
static-region-bound.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
static-vec-repeat-not-constant.rs
staticness-mismatch.rs
std-uncopyable-atomics.rs
str-idx.rs rustc: Remove &str indexing from the language. 2014-07-01 19:12:29 -07:00
struct-base-wrong-type.rs
struct-field-assignability.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
struct-field-privacy.rs
struct-fields-decl-dupe.rs
struct-fields-dupe.rs
struct-fields-missing.rs
struct-fields-too-many.rs
struct-like-enum-nonexhaustive.rs
struct-literal-in-for.rs libsyntax: Disallow struct literals after if, while, match, and 2014-06-23 15:39:29 -07:00
struct-literal-in-if.rs libsyntax: Disallow struct literals after if, while, match, and 2014-06-23 15:39:29 -07:00
struct-literal-in-match-discriminant.rs libsyntax: Disallow struct literals after if, while, match, and 2014-06-23 15:39:29 -07:00
struct-literal-in-while.rs libsyntax: Disallow struct literals after if, while, match, and 2014-06-23 15:39:29 -07:00
struct-no-fields-2.rs libsyntax: Disallow struct literals after if, while, match, and 2014-06-23 15:39:29 -07:00
struct-no-fields-3.rs libsyntax: Disallow struct literals after if, while, match, and 2014-06-23 15:39:29 -07:00
struct-no-fields-4.rs libsyntax: Disallow struct literals after if, while, match, and 2014-06-23 15:39:29 -07:00
struct-no-fields-5.rs libsyntax: Disallow struct literals after if, while, match, and 2014-06-23 15:39:29 -07:00
struct-no-fields-enumlike.rs libsyntax: don't allow enum structs with no fields 2014-06-22 20:21:11 +02:00
struct-no-fields.rs
struct-pat-derived-error.rs
struct-pattern-match-useless.rs
structure-constructor-type-mismatch.rs librustc: Check structure constructors against their types. 2014-07-24 07:26:24 -07:00
super-at-top-level.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
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
syntax-extension-bytes-non-ascii-char-literal.rs Deprecate the bytes!() macro. 2014-06-18 17:02:22 -07:00
syntax-extension-bytes-non-literal.rs Deprecate the bytes!() macro. 2014-06-18 17:02:22 -07:00
syntax-extension-bytes-too-large-integer-literal.rs Deprecate the bytes!() macro. 2014-06-18 17:02:22 -07:00
syntax-extension-bytes-too-large-u8-literal.rs Deprecate the bytes!() macro. 2014-06-18 17:02:22 -07:00
syntax-extension-bytes-too-small-integer-literal.rs Deprecate the bytes!() macro. 2014-06-18 17:02:22 -07:00
syntax-extension-bytes-too-small-u8-literal.rs Deprecate the bytes!() macro. 2014-06-18 17:02:22 -07:00
syntax-extension-bytes-unsupported-literal.rs Deprecate the bytes!() macro. 2014-06-18 17:02:22 -07:00
syntax-extension-minor.rs
tag-that-dare-not-speak-its-name.rs
tag-type-args.rs
tag-variant-cast-non-nullary.rs
tag-variant-disr-dup.rs
tag-variant-disr-non-nullary.rs
tail-typeck.rs
task-rng-isnt-sendable.rs
terr-in-field.rs
terr-sorts.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
test-cfg.rs
trace_macros-format.rs
trailing-plus-in-bounds.rs libsyntax: Stop parsing + with no bounds after it. 2014-06-20 15:46:58 -07:00
trait-bounds-cant-coerce.rs libsyntax: Stop parsing + with no bounds after it. 2014-06-20 15:46:58 -07:00
trait-bounds-impl-comparison-1.rs librustc: Properly compare implementation method type parameter bounds 2014-07-01 21:59:16 -07:00
trait-bounds-impl-comparison-2.rs librustc: Properly compare implementation method type parameter bounds 2014-07-01 21:59:16 -07:00
trait-bounds-not-on-bare-trait.rs Register new snapshots 2014-06-15 23:30:24 -07:00
trait-bounds-not-on-impl.rs Register new snapshots 2014-06-15 23:30:24 -07:00
trait-bounds-not-on-struct.rs Register new snapshots 2014-06-15 23:30:24 -07:00
trait-bounds-sugar.rs libsyntax: Allow + to separate trait bounds from objects. 2014-06-13 13:53:34 -07:00
trait-coercion-generic-bad.rs
trait-coercion-generic-regions.rs
trait-duplicate-methods.rs
trait-impl-can-not-have-untraitful-methods.rs
trait-impl-different-num-params.rs
trait-impl-for-module.rs
trait-impl-method-mismatch.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
trait-impl-of-supertrait-has-wrong-lifetime-parameters.rs
trait-keyword.rs
trait-matching-lifetimes.rs librustc: Resolve regions and report errors in trait/impl method 2014-07-25 15:58:01 -07:00
trait-or-new-type-instead.rs
trait-resolution-in-overloaded-op.rs
trait-test-2.rs librustc: Remove the fallback to int from typechecking. 2014-06-24 17:18:48 -07:00
trait-test.rs
transmute-different-sizes.rs Rolling up PRs in the queue 2014-06-13 13:53:55 -07:00
transmute-type-parameters.rs librustc: Forbid transmute from being called on types whose size is 2014-06-13 13:53:55 -07:00
tuple-arity-mismatch.rs
tuple-struct-nonexhaustive.rs
tutorial-suffix-inference-test.rs
type-arg-out-of-scope.rs
type-mismatch-multiple.rs
type-parameter-names.rs
type-params-in-different-spaces-1.rs librustc: Take the parameter space into account when combining type 2014-07-02 15:40:09 -07:00
type-params-in-different-spaces-2.rs librustc: Take the parameter space into account when combining type 2014-07-02 15:40:09 -07:00
type-params-in-different-spaces-3.rs librustc: Take the parameter space into account when combining type 2014-07-02 15:40:09 -07:00
type-recursive.rs
type-shadow.rs
typeck_type_placeholder_item.rs
typeck_type_placeholder_lifetime_1.rs
typeck_type_placeholder_lifetime_2.rs
typeck_type_placeholder_mismatch.rs
typeck-cast-pointer-to-float.rs typeck: check casts from pointers to floats, closes #15445 2014-07-10 12:28:46 +02:00
typeck-unsafe-always-share.rs std: Stabilize unit, bool, ty, tuple, arc, any 2014-07-26 13:12:20 -07:00
ufcs-explicit-self-bad.rs librustc: Implement the fully-expanded, UFCS form of explicit self. 2014-07-16 20:01:52 -07:00
unbalanced-doublequote.rs
unboxed-closures-type-mismatch.rs librustc: Implement unboxed closures with mutable receivers 2014-07-18 09:01:37 -07:00
unboxed-closures-vtable-mismatch.rs librustc: Implement unboxed closures with mutable receivers 2014-07-18 09:01:37 -07:00
unconstrained-none.rs
unconstrained-ref.rs
uninhabited-enum-cast.rs std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00
unique-object-noncopyable.rs
unique-pinned-nocopy.rs
unique-unique-kind.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
unique-vec-res.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
unnecessary-private.rs
unop-neg-bool.rs
unreachable-arm.rs
unreachable-code.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
unreachable-variant.rs
unresolved-extern-mod-suggestion.rs
unresolved-import.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
unsafe-around-compiler-generated-unsafe.rs
unsafe-destructor-check-crash.rs Add test for crash in unsafe destructor check 2014-07-15 19:34:42 -04:00
unsafe-fn-assign-deref-ptr.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
unsafe-fn-autoderef.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
unsafe-fn-called-from-safe.rs
unsafe-fn-deref-ptr.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
unsafe-fn-used-as-value.rs
unsendable-class.rs Remove managed_box gate from tests 2014-07-26 21:05:29 -07:00
unsized2.rs
unsized3.rs Change DST syntax: type -> Sized? 2014-07-08 22:44:31 +12:00
unsized4.rs Change DST syntax: type -> Sized? 2014-07-08 22:44:31 +12:00
unsized5.rs Change DST syntax: type -> Sized? 2014-07-08 22:44:31 +12:00
unsized6.rs Change DST syntax: type -> Sized? 2014-07-08 22:44:31 +12:00
unsized-bare-typaram.rs Change DST syntax: type -> Sized? 2014-07-08 22:44:31 +12:00
unsized-enum.rs Change DST syntax: type -> Sized? 2014-07-08 22:44:31 +12:00
unsized-struct.rs Change DST syntax: type -> Sized? 2014-07-08 22:44:31 +12:00
unsized.rs
unsupported-cast.rs
unused-attr.rs
unused-result.rs lint: extend #[must_use] to handle a message. 2014-07-10 08:05:58 +10:00
use-after-move-based-on-type.rs
use-after-move-implicity-coerced-object.rs std: Rename the ToStr trait to ToString, and to_str to to_string. 2014-07-08 13:01:43 -07:00
use-after-move-self-based-on-type.rs
use-after-move-self.rs
use-from-trait-xc.rs Disallow importing from types when reexport is involved 2014-07-17 13:50:54 +09:00
use-from-trait.rs rustc: reduce redundant resolve errors. 2014-06-18 01:19:22 +01:00
use-meta-mismatch.rs
use-mod-2.rs Implement new mod import sugar 2014-07-20 12:40:08 +02:00
use-mod-3.rs Implement new mod import sugar 2014-07-20 12:40:08 +02:00
use-mod.rs Implement new mod import sugar 2014-07-20 12:40:08 +02:00
useless-priv2.rs
useless-priv.rs
variadic-ffi-1.rs
variadic-ffi-2.rs
variadic-ffi-3.rs
variadic-ffi-4.rs
variadic-ffi.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
variance-cell-is-invariant.rs
variance-regions-direct.rs Introduce VecPerParamSpace and use it to represent sets of types and 2014-06-13 13:20:24 -04:00
variance-regions-indirect.rs Introduce VecPerParamSpace and use it to represent sets of types and 2014-06-13 13:20:24 -04:00
variance-trait-matching-2.rs librustc: Match trait self types exactly. 2014-06-28 11:18:37 -07:00
variance-trait-matching.rs librustc: Match trait self types exactly. 2014-06-28 11:18:37 -07:00
vec-macro-with-comma-only.rs
vec-mut-iter-borrow.rs librustc: Stop desugaring for expressions and translate them directly. 2014-07-24 18:58:12 -07:00
vec-res-add.rs
vector-cast-weirdness.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
vector-no-ann.rs
view-items-at-top.rs
vtable-res-trait-param.rs
warn-foreign-int-types.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
warn-path-statement.rs librustc: Remove the fallback to int for integers and f64 for 2014-06-29 11:47:58 -07:00
weak-lang-item.rs
while-type-error.rs
writing-to-immutable-vec.rs
wrong-mul-method-signature.rs
wrong-ret-type.rs
xc-private-method2.rs
xc-private-method.rs
xcrate-private-by-default.rs
xcrate-unit-struct.rs