rust/src/libcore
Patrick Walton f1520ea0cf librustc: Check built-in trait bounds on implementations when direct
method calls are involved.

This breaks code like:

    impl<T:Copy> Foo for T { ... }

    fn take_param<T:Foo>(foo: &T) { ... }

    fn main() {
        let x = box 3i; // note no `Copy` bound
        take_param(&x);
    }

Change this code to not contain a type error. For example:

    impl<T:Copy> Foo for T { ... }

    fn take_param<T:Foo>(foo: &T) { ... }

    fn main() {
        let x = 3i; // satisfies `Copy` bound
        take_param(&x);
    }

Closes #15860.

[breaking-change]
2014-07-25 00:50:35 -07:00
..
fmt librustc: Stop desugaring for expressions and translate them directly. 2014-07-24 18:58:12 -07:00
num Add examples for Checked[Add|Sub|Mul|Div] 2014-07-24 07:26:08 -07:00
tuple core: add a primitive page for (). 2014-07-04 11:20:54 +10:00
any.rs librustc: Check built-in trait bounds on implementations when direct 2014-07-25 00:50:35 -07:00
atomics.rs Mistake in AtomicBool spinlock example 2014-07-10 11:55:04 +02:00
bool.rs Move core::bool tests to run-pass 2014-06-24 17:22:59 -07:00
cell.rs Stabilization for owned (now boxed) and cell 2014-07-13 12:52:51 -07:00
char.rs librustc: Stop desugaring for expressions and translate them directly. 2014-07-24 18:58:12 -07:00
clone.rs Extract tests from libcore to a separate crate 2014-06-29 15:57:21 -07:00
cmp.rs core: Stabliize core::cmp 2014-07-18 15:59:54 -07:00
collections.rs Document some trait methods. 2014-07-19 12:26:18 +02:00
default.rs auto merge of #15806 : treeman/rust/std-doc, r=alexcrichton 2014-07-20 17:46:32 +00:00
failure.rs Extract tests from libcore to a separate crate 2014-06-29 15:57:21 -07:00
finally.rs Extract tests from libcore to a separate crate 2014-06-29 15:57:21 -07:00
intrinsics.rs libcore: Reexport a couple of widely-used low-level intrinsics to reduce 2014-07-09 22:28:23 -07:00
iter.rs librustc: Stop desugaring for expressions and translate them directly. 2014-07-24 18:58:12 -07:00
kinds.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00
lib.rs Update doc URLs for version bump 2014-07-11 11:21:57 -07:00
macros.rs Extract tests from libcore to a separate crate 2014-06-29 15:57:21 -07:00
mem.rs Extract tests from libcore to a separate crate 2014-06-29 15:57:21 -07:00
ops.rs librustc: Make bare functions implement the FnMut trait. 2014-07-24 07:26:22 -07:00
option.rs librustc: Stop desugaring for expressions and translate them directly. 2014-07-24 18:58:12 -07:00
prelude.rs librustc: Implement unboxed closures with mutable receivers 2014-07-18 09:01:37 -07:00
ptr.rs librustc: Stop desugaring for expressions and translate them directly. 2014-07-24 18:58:12 -07:00
raw.rs Extract tests from libcore to a separate crate 2014-06-29 15:57:21 -07:00
result.rs Document that Result.unwrap prints the Err's value 2014-07-14 10:20:29 +02:00
should_not_exist.rs core: Rename container mod to collections. Closes #12543 2014-06-08 21:29:57 -07:00
simd.rs Fix spelling errors in comments. 2014-06-08 13:39:42 -04:00
slice.rs libcore: Fix Items iterator for zero sized types. 2014-07-05 02:49:03 -07:00
str.rs librustc: Stop desugaring for expressions and translate them directly. 2014-07-24 18:58:12 -07:00
ty.rs Rename all raw pointers as necessary 2014-06-28 11:53:58 -07:00