about summary refs log tree commit diff
path: root/src/libcore
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2014-12-13 03:07:17 +0000
committerbors <bors@rust-lang.org>2014-12-13 03:07:17 +0000
commit2d90b91b5d2d18cd433a9e6f1944b685f8b4bb04 (patch)
tree4505a743df61f423226618ea002c87faccb9891b /src/libcore
parent8c6692724242c93416e574a48c5ea51b2e95d461 (diff)
parent124e1e18cc4f327730a978a7a8c1e7876bb63c6e (diff)
downloadrust-2d90b91b5d2d18cd433a9e6f1944b685f8b4bb04.tar.gz
rust-2d90b91b5d2d18cd433a9e6f1944b685f8b4bb04.zip
auto merge of #19683 : nikomatsakis/rust/generalized-where-clauses, r=nrc
This patch does not itself enable generalized where clauses, but it lays the groundwork. Rather than storing a list of bounds per type parameter, the trait selection and other logic is now driven by a unified list of predicates. All predicate handling is now driven through a common interface. This also fixes a number of bugs where region predicates were being dropped on the floor. As a drive-by, this patch also fixes some bugs in the opt-out-copy feature flag.

That said, this patch does not change the parser or AST in any way, so we still *generate* the list of predicates by walking a list of bounds (and we still *store* the bounds on the `TypeParameterDef` and so on). Those will get patched in a follow-up.

The commits in this case are standalone; the first few are simple refactorings.

r? @nick29581 
cc @aturon 
Diffstat (limited to 'src/libcore')
-rw-r--r--src/libcore/kinds.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libcore/kinds.rs b/src/libcore/kinds.rs
index f932acffd3c..2b92ae8af0a 100644
--- a/src/libcore/kinds.rs
+++ b/src/libcore/kinds.rs
@@ -19,7 +19,7 @@
 
 /// Types able to be transferred across task boundaries.
 #[lang="send"]
-pub trait Send for Sized? {
+pub trait Send for Sized? : 'static {
     // empty.
 }