Commit Graph

39987 Commits

Author SHA1 Message Date
Manish Goregaokar
285cb8e6d8 Rollup merge of #23399 - tbu-:pr_libflate_error, r=huonw
This removes the error case of the compression functions, the only errors that
can occur are incorrect parameters or an out-of-memory condition, both of which
are handled with panics in Rust.

Also introduces an extensible `Error` type instead of returning an `Option`.
The type implements a destructor so you can't destructure it.
2015-03-17 15:19:38 +05:30
Niko Matsakis
88b65c9e2b Refactor the emit_vtable_methods code to be a bit cleaner in its use of
iterators.
2015-03-17 05:18:01 -04:00
bors
883551b1d7 Auto merge of #23429 - rprichard:fix-linux-build, r=alexcrichton
The RUST_TARGET_STAGE_N rule uses LLVM_LIBDIR_RUSTFLAGS_<target-triple>,
which expands to -L "$(llvm-config --libdir)" when the target-triple is
also a host-triple. Rather than expand to -L "" if llvm-config has not yet
been built, add a dependency on the target llvm-config.

When the target-triple is not a host-triple, the new LLVM_CONFIG_$(2)
dependency should expand to nothing.

r? alexcrichton
2015-03-17 05:57:14 +00:00
Mikhail Zabaluev
e3aefaaa4d std::io::buffered: Don't use 'flush' in documentation of into_inner
The word 'flush' may be misinterpreted as if `flush` is called on the
underlying writer, which is not the case.
2015-03-17 06:33:47 +02:00
Ryan Prichard
b07a1dfcd1 Fix the Linux nightly build by adding a LLVM_CONFIG_<target-triple> dep.
The RUST_TARGET_STAGE_N rule uses LLVM_LIBDIR_RUSTFLAGS_<target-triple>,
which expands to -L "$(llvm-config --libdir)" when the target-triple is
also a host-triple. Rather than expand to -L "" if llvm-config has not yet
been built, add a dependency on the target llvm-config.

When the target-triple is not a host-triple, the new LLVM_CONFIG_$(2)
dependency should expand to nothing.
2015-03-16 21:13:36 -07:00
bors
e46610966f Auto merge of #23104 - japaric:inherent, r=nikomatsakis
- Allow inherent implementations on `char`, `str`, `[T]`, `*const T`, `*mut T` and all the numeric primitives.
- copy `unicode::char::CharExt` methods into `impl char`
- remove `unicode::char::CharExt`, its re-export `std::char::CharExt` and `CharExt` from the prelude
- copy `collections::str::StrExt` methods into `impl str`
- remove `collections::str::StrExt` its re-export `std::str::StrExt`, and `StrExt` from the prelude
- copy `collections::slice::SliceExt` methods into `impl<T> [T]`
- remove `collections::slice::SliceExt` its re-export `std::slice::SliceExt`, and `SliceExt` from the prelude
- copy `core::ptr::PtrExt` methods into `impl<T> *const T`
- remove `core::ptr::PtrExt` its re-export `std::ptr::PtrExt`, and `PtrExt` from the prelude
- copy `core::ptr::PtrExt` and `core::ptr::MutPtrExt` methods into `impl<T> *mut T`
- remove `core::ptr::MutPtrExt` its re-export `std::ptr::MutPtrExt`, and `MutPtrExt` from the prelude
- copy `core::num::Int` and `core::num::SignedInt` methods into `impl i{8,16,32,64,size}`
- copy `core::num::Int` and `core::num::UnsignedInt` methods into `impl u{8,16,32,64,size}`
- remove `core::num::UnsignedInt` and its re-export `std::num::UnsignedInt`
- move `collections` tests into its own crate: `collectionstest`
- copy `core::num::Float` methods into `impl f{32,64}`

Because this PR removes several traits, this is a [breaking-change], however functionality remains unchanged and breakage due to unresolved imports should be minimal. If you encounter an error due to an unresolved import, simply remove the import:

``` diff
  fn main() {
-     use std::num::UnsignedInt;  //~ error: unresolved import `std::num::UnsignedInt`.
-
      println!("{}", 8_usize.is_power_of_two());
  }
```

---

cc  #16862
[preview docs](http://japaric.github.io/inherent/std/index.html)
[unicode::char](http://japaric.github.io/inherent/unicode/primitive.char.html)
[collections::str](http://japaric.github.io/inherent/collections/primitive.str.html)
[std::f32](http://japaric.github.io/inherent/std/primitive.f32.html)
2015-03-17 03:23:50 +00:00
Jorge Aparicio
b65ebc4094 better document the hacks required to test libcollections 2015-03-16 21:57:43 -05:00
Jorge Aparicio
8256241d3a impl f{32,64} 2015-03-16 21:57:43 -05:00
Jorge Aparicio
3ab26f8469 join lines in makefile 2015-03-16 21:57:43 -05:00
Jorge Aparicio
59749087f8 fix after rebase 2015-03-16 21:57:42 -05:00
Jorge Aparicio
6d49476e7b preemptively fix windows compilation errors 2015-03-16 21:57:42 -05:00
Jorge Aparicio
cb5e429291 move some tests back to libcollections 2015-03-16 21:57:42 -05:00
Jorge Aparicio
e09bf82a31 enable enum_set tests 2015-03-16 21:57:42 -05:00
Jorge Aparicio
a079d5e4d2 remove imports 2015-03-16 21:57:42 -05:00
Jorge Aparicio
6453fcd4cc extract libcollections tests into libcollectionstest 2015-03-16 21:57:42 -05:00
Jorge Aparicio
3ff84fc5fd impl {i,u}{8,16,32,64,size} 2015-03-16 21:57:42 -05:00
Jorge Aparicio
8afcaabee3 impl<T> *const T, impl<T> *mut T 2015-03-16 21:57:42 -05:00
Jorge Aparicio
633c593bc3 impl<T> [T] 2015-03-16 21:56:31 -05:00
Jorge Aparicio
5b118f5ecd impl str 2015-03-16 21:56:31 -05:00
Jorge Aparicio
b2f37554bf impl char 2015-03-16 21:56:31 -05:00
Jorge Aparicio
8570739880 allow inherent implementations on primitives 2015-03-16 21:56:31 -05:00
bors
a2572885ab Auto merge of #23352 - alexcrichton:stabilize-net, r=aturon
This commit performs a stabilization pass over the std::net module,
incorporating the changes from RFC 923. Specifically, the following actions were
taken:

Stable functionality:

* `net` (the name)
* `Shutdown`
* `Shutdown::{Read, Write, Both}`
* `lookup_host`
* `LookupHost`
* `SocketAddr`
* `SocketAddr::{V4, V6}`
* `SocketAddr::port`
* `SocketAddrV4`
* `SocketAddrV4::{new, ip, port}`
* `SocketAddrV6`
* `SocketAddrV4::{new, ip, port, flowinfo, scope_id}`
* Common trait impls for socket addr structures
* `ToSocketAddrs`
* `ToSocketAddrs::Iter`
* `ToSocketAddrs::to_socket_addrs`
* `ToSocketAddrs for {SocketAddr*, (Ipv*Addr, u16), str, (str, u16)}`
* `Ipv4Addr`
* `Ipv4Addr::{new, octets, to_ipv6_compatible, to_ipv6_mapped}`
* `Ipv6Addr`
* `Ipv6Addr::{new, segments, to_ipv4}`
* `TcpStream`
* `TcpStream::connect`
* `TcpStream::{peer_addr, local_addr, shutdown, try_clone}`
* `{Read,Write} for {TcpStream, &TcpStream}`
* `TcpListener`
* `TcpListener::bind`
* `TcpListener::{local_addr, try_clone, accept, incoming}`
* `Incoming`
* `UdpSocket`
* `UdpSocket::bind`
* `UdpSocket::{recv_from, send_to, local_addr, try_clone}`

Unstable functionality:

* Extra methods on `Ipv{4,6}Addr` for various methods of inspecting the address
  and determining qualities of it.
* Extra methods on `TcpStream` to configure various protocol options.
* Extra methods on `UdpSocket` to configure various protocol options.

Deprecated functionality:

* The `socket_addr` method has been renamed to `local_addr`

This commit is a breaking change due to the restructuring of the `SocketAddr`
type as well as the renaming of the `socket_addr` method. Migration should be
fairly straightforward, however, after accounting for the new level of
abstraction in `SocketAddr` (protocol distinction at the socket address level,
not the IP address).

[breaking-change]
2015-03-17 00:50:26 +00:00
bors
92dd995e17 Auto merge of #23331 - eddyb:attr-lookahead, r=nikomatsakis
Most of the changes are cleanup facilitated by straight-forward attribute handling.
This is a minor [breaking-change] for users of `quote_stmt!` (returns `Option<P<Stmt>>` now) and some of the public methods in `Parser` (a few `Vec<Attribute>` arguments/returns were removed).

r? @nikomatsakis
2015-03-16 22:13:52 +00:00
Tshepang Lekhonkhobe
4b75dc4648 thread: 'dur' -> 'duration'
Also:

- italize the binding name
- complete a sentence
2015-03-16 23:25:22 +02:00
bors
1760e8749a Auto merge of #23342 - apasel422:23327, r=alexcrichton
closes #23327
2015-03-16 19:35:42 +00:00
Paul ADENOT
7dbcf08211 Fix 404 to crates.io's doc on integrating with a native toolchain
This looks like the most logical target to give to this link, or at least what I would expect as someone that want to integrate with a native library.

r? @steveklabnik
2015-03-16 19:56:14 +01:00
Alex Crichton
b3a44859ec std: Stabilize the Write::flush method
The [associated RFC][rfc] for possibly splitting out `flush` has been closed and
as a result there are no more blockers for stabilizing this method, so this
commit marks the method as such.

[rfc]: https://github.com/rust-lang/rfcs/pull/950
2015-03-16 11:51:57 -07:00
Tobias Bucher
1b894c65de Improve error handling in libflate
This removes the error case of the compression functions, the only errors that
can occur are incorrect parameters or an out-of-memory condition, both of which
are handled with panics in Rust.

Also introduces an extensible `Error` type instead of returning an `Option`.
2015-03-16 19:15:20 +01:00
bors
bde09eea35 Auto merge of #23347 - aturon:stab-misc, r=alexcrichton
This commit deprecates the `count`, `range` and `range_step` functions
in `iter`, in favor of range notation. To recover all existing
functionality, a new `step_by` adapter is provided directly on `ops::Range`
and `ops::RangeFrom`.

[breaking-change]

r? @alexcrichton
2015-03-16 17:02:11 +00:00
Tamir Duberstein
c1f6951826 Regression test for #13077
Closes #13077.
2015-03-16 07:35:24 -07:00
Tamir Duberstein
2522207a99 Regression test for #16922
Closes #16922.
2015-03-16 07:35:24 -07:00
Tamir Duberstein
ef343645c6 Regression test for #20714
Closes #20714.
2015-03-16 07:35:24 -07:00
Tamir Duberstein
c986199425 Regression test for #20396
Closes #20396.
2015-03-16 07:35:23 -07:00
Tamir Duberstein
1d31f31d10 Regression test for #20261
Closes #20261.
2015-03-16 07:35:23 -07:00
Tamir Duberstein
1759cfa01c Consistent spacing 2015-03-16 07:35:23 -07:00
Tamir Duberstein
a19bbca092 Regression test for #20225
Closes #20225.
2015-03-16 07:35:23 -07:00
Tamir Duberstein
3a93bdb92c Regression test for #19982
Closes #17165, #19982.
2015-03-16 07:35:23 -07:00
Tamir Duberstein
b9f5711a8a Regression test for #18919
Closes #18919.
2015-03-16 07:35:22 -07:00
Tamir Duberstein
a4fa901dab Regression test for #13407
Closes #13407.
2015-03-16 07:35:22 -07:00
Tamir Duberstein
802e7073b7 Regression test for #11820
Closes #11820.
2015-03-16 07:35:22 -07:00
Tamir Duberstein
a17f061b13 Regression test for #9951
Closes #9951.
2015-03-16 07:35:20 -07:00
bors
cc789193e1 Auto merge of #23395 - bluss:tuple-macro, r=alexcrichton
Remove the unused parts of the tuple macro in libcore (for `val0` and similar removed methods). Also adjust the module docs accordingly.
2015-03-16 14:29:13 +00:00
Andrew Paseltiner
90f06ae33f document undefined collection behavior with interior mutability
closes #23327
2015-03-16 09:55:41 -04:00
bors
80a0d8223d Auto merge of #23404 - richo:ppc-configure, r=sanxiyn
Finally making progress on a fully native toolchain. Specifically, this makes it possible to move forward by building librustllvm on the target platform.
2015-03-16 11:55:39 +00:00
bors
857ac28867 Auto merge of #23411 - cmr:test-7950, r=huonw
Closes #7950
2015-03-16 07:37:27 +00:00
Corey Richardson
3e01b9e194 Add test for #7950
Closes #7950
2015-03-16 03:33:12 -04:00
Nicholas
cbd37d8980 [BREAKING] Rename two instances of MAP_NONRESERVE
To the correct MAP_NORESERVE. Every other thing is known as MAP_NORESERVE, so this is just a basic typo.

I really doubt this will break anybody's but my own code.
2015-03-15 23:03:18 -07:00
Nick Cameron
1fd38c181a Reviewer changes 2015-03-16 17:01:12 +13:00
bors
cd3faf38ee Auto merge of #23394 - tanadeau:remove-old_io-notes, r=alexcrichton
r? @alexcrichton
2015-03-16 03:55:13 +00:00
Richo Healey
a0297cbe12 powerpc: Support configure on native ppc[64] hosts 2015-03-15 20:04:04 -07:00