diff options
| author | bors <bors@rust-lang.org> | 2015-02-24 02:22:44 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2015-02-24 02:22:44 +0000 |
| commit | 2890508d97af287a136ac50ffa13a1c0a3e32e4e (patch) | |
| tree | d4cba9bfc722d5fb7d44c74dfebde016c45130aa /src/libsyntax/ext | |
| parent | c4fe7d6aea022330efb8d1b470cac030a859f8f5 (diff) | |
| parent | 3dcc631dee7b2f4be3443b4bbc1dd916436d60ca (diff) | |
| download | rust-2890508d97af287a136ac50ffa13a1c0a3e32e4e.tar.gz rust-2890508d97af287a136ac50ffa13a1c0a3e32e4e.zip | |
Auto merge of #21689 - FlaPer87:oibit-send-and-friends, r=nikomatsakis
This is one more step towards completing #13231
This series of commits add support for default trait implementations. The changes in this PR don't break existing code and they are expected to preserve the existing behavior in the compiler as far as built-in bounds checks go.
The PR adds negative implementations of `Send`/`Sync` for some types and it removes the special cases for `Send`/`Sync` during the trait obligations checks. That is, it now fully relies on the traits check rather than lang items.
Once this patch lands and a new snapshot is created, it'll be possible to add default impls for `Send` and `Sync` and remove entirely the use of `BuiltinBound::{BoundSend,BoundSync}` for positive implementations as well.
This PR also removes the restriction on negative implementations. That is, it is now possible to add negative implementations for traits other than `Send`/`Sync`
Diffstat (limited to 'src/libsyntax/ext')
| -rw-r--r-- | src/libsyntax/ext/deriving/generic/mod.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libsyntax/ext/deriving/generic/mod.rs b/src/libsyntax/ext/deriving/generic/mod.rs index 36bd8d39a83..a36d3a155b8 100644 --- a/src/libsyntax/ext/deriving/generic/mod.rs +++ b/src/libsyntax/ext/deriving/generic/mod.rs @@ -498,7 +498,7 @@ impl<'a> TraitDef<'a> { // Just mark it now since we know that it'll end up used downstream attr::mark_used(&attr); let opt_trait_ref = Some(trait_ref); - let ident = ast_util::impl_pretty_name(&opt_trait_ref, &*self_type); + let ident = ast_util::impl_pretty_name(&opt_trait_ref, Some(&*self_type)); let mut a = vec![attr]; a.extend(self.attributes.iter().cloned()); cx.item( |
