Commit graph

11721 commits

Author SHA1 Message Date
Guillaume Gomez
5624ac7c47 Rollup merge of #47165 - mbrubeck:args, r=alexcrichton
[unix] Don't clone command-line args on startup

Fixes part of #47164 and simplifies the `args` code on non-Apple Unix platforms.

Note: This could change behavior for programs that use both `std::env::args` *and* unsafe code that mutates `argv` directly.  However, these programs already behave differently on different platforms.  The new behavior on non-Apple platforms is closer to the existing behavior on Apple platforms.
2018-01-06 02:13:33 +01:00
Guillaume Gomez
67e3a2bb2c Rollup merge of #46987 - frewsxcv:frewsxcv-current-exe, r=QuietMisdreavus
Minor rewrite of env::current_exe docs; clarify symlinks.

- Update example in ‘security’ section to use hard links, like the
  linked securityvulns.com example.
- Weaken language on symbolic links – indicate behavior is
  platform-specific

Fixes https://github.com/rust-lang/rust/issues/43617.
2018-01-06 02:13:32 +01:00
Stjepan Glavina
7948f458ab Write examples for {BTree,Hash}Set::{get,replace,take} 2018-01-05 15:02:10 +01:00
Sergio Benitez
d301da55f8 Clarify appending behavior of 'io::Read::read_to_string()'. 2018-01-05 04:24:12 -08:00
kennytm
71c8e106e3 Rollup merge of #47198 - dzamlo:patch-2, r=frewsxcv
Fix an error in std::process documentation
2018-01-05 17:22:12 +08:00
kennytm
63c8e0c86b Rollup merge of #47030 - ollie27:stab, r=alexcrichton
Correct a few stability attributes

* The extra impls for `ManuallyDrop` were added in #44310 which was only stabilised in 1.22.0.
* The impls for `SliceIndex` were stabilised in #43373 but as `RangeInclusive` and `RangeToInclusive` are still unstable the impls should remain unstable.
* The `From` impls for atomic integers were added in #45610 but most atomic integers are still unstable.
* The `shared_from_slice2` impls were added in #45990 but they won't be stable until 1.24.0.
* The `Mutex` and `RwLock` impls were added in #46082 but won't be stable until 1.24.0.
2018-01-05 17:22:04 +08:00
Matt Brubeck
91c3eee173 [unix] Don't clone command-line args on startup 2018-01-04 15:11:39 -08:00
Loïc Damien
8fc4a24062
Fix an error in std::process documentation 2018-01-04 22:01:57 +01:00
Alex Crichton
53fd0c50d8 Bump to 1.25.0
* Bump the release version to 1.25
* Bump the bootstrap compiler to the recent beta
* Allow using unstable rustdoc features on beta - this fix has been applied to
  the beta branch but needed to go to the master branch as well.
2018-01-04 07:21:22 -08:00
Corey Farwell
f3ef077b91 Document when LineWriter flushes; document errors for into_inner.
Fixes https://github.com/rust-lang/rust/issues/42468.
2018-01-02 13:30:44 -08:00
bors
a37126b90c Auto merge of #47042 - redox-os:redox, r=estebank
Redox - Implement rename using new system call

This does the following:

- Update syscall module to match upstream
- Implement rename using new system call
- Make readlink and symlink utilize O_CLOEXEC
- Make readlink and symlink not leave dangling file handles on failure
2018-01-02 11:22:40 +00:00
bors
8c59418962 Auto merge of #46713 - Manishearth:memchr, r=bluss
Use memchr to speed up [u8]::contains 3x

None
2017-12-31 16:38:10 +00:00
varkor
e154e33add Fix doc typo for is_ascii_graphic
Fixes #47067.
2017-12-30 21:27:43 +00:00
bors
35681fbc76 Auto merge of #47026 - EdSchouten:cloudabi-unwind, r=kennytm
Link against -lunwind on CloudABI.

CloudABI makes use of LLVM's libunwind to do stack unwinding. It is
installed under the name libunwind.a.
2017-12-29 23:07:42 +00:00
Ed Schouten
146fe0ad75 Add proper library dependencies for libstd on CloudABI.
Don't attempt to build libunwind on CloudABI, as libunwind is already
provided by the system by default.
2017-12-29 09:33:26 +01:00
Ed Schouten
bd812d9259 Remove an unused import for cfg(not(feature = "backtrace")).
The 'mem' module is not used for this specific code. This was
copy-pasted in by accident when adding RFC 1937 (? in main) support.
2017-12-28 14:49:31 +01:00
Diggory Blake
e0855ff4a1 Implement AsRef<Path> for Component 2017-12-28 13:27:53 +00:00
Jeremy Soller
5919243924 Implement rename using new system call
Fix readlink and symlink to utilize O_CLOEXEC
2017-12-27 20:37:50 -07:00
bors
bfbb1f5ce1 Auto merge of #46479 - bkchr:termination_trait, r=arielb1
Implements RFC 1937: `?` in `main`

This is the first part of the RFC 1937 that supports new
`Termination` trait in the rust `main` function.

Thanks @nikomatsakis, @arielb1 and all other people in the gitter channel for all your help!

The support for doctest and `#[test]` is still missing, bu as @nikomatsakis said, smaller pull requests are better :)
2017-12-27 15:41:51 +00:00
Oliver Middleton
a8d107be25 Correct a few stability attributes 2017-12-27 14:11:05 +00:00
bors
3fd27b2718 Auto merge of #46977 - est31:column_fix, r=dtolnay
Make the output of the column! macro 1 based

Fixes  #46868.

I didn't add any regression tests as the change already had to change tests inside the codebase.

r? @dtolnay
2017-12-27 07:11:50 +00:00
Bastian Köcher
5a4298b6d3 Don't use process::exit as it is an unreachable on wasm32 2017-12-26 23:53:51 +01:00
bors
503153e950 Auto merge of #46554 - kennytm:45861-step-4-5-6-7-upload-test-result-and-remove-toolstate-toml, r=alexcrichton
[auto-toolstate] Upload the toolstate result to an external git repository, and removes BuildExpectation

This PR consists of 3 commits.

1. (Steps 4–6) The `toolstate.json` output previously collected is now pushed to the https://github.com/rust-lang-nursery/rust-toolstate repository.
2. (Step 7) Revert commit ab018c7, thus removing all traces of `BuildExpectation` and `toolstate.toml`.
3. (Step 8) Adjust CONTRIBUTION.md for the new procedure.

These are the last steps of #45861. After this PR, the toolstate will be automatically computed and published to https://rust-lang-nursery.github.io/rust-toolstate/. There is no need to manage toolstate.toml again.

Closes #45861.
2017-12-26 18:03:00 +00:00
kennytm
2566fa25c7
Revert "Add a file to trivially disable tool building or testing"
This reverts commit ab018c76e1.

This also adds the `ToolBuild::is_ext_tool` field to replace the previous
`ToolBuild::expectation` field, to indicate whether a build-failure of
certain tool is essential.
2017-12-27 00:00:45 +08:00
Bastian Köcher
81e375dba5 Change name of lang_start_real to lang_start_internal
Also remove `'static` from `__rust_begin_short_backtrace`
2017-12-26 12:26:39 +01:00
Bastian Köcher
7dfec34a20 Split lang_start in two functions to reduce generated code 2017-12-26 12:26:39 +01:00
Bastian Köcher
dbbba55382 Rework the exit failure and success declaration for wasm32 2017-12-26 12:26:39 +01:00
Bastian Köcher
072f3ebd87 Use move for optimization purposes 2017-12-26 12:26:39 +01:00
Bastian Köcher
faff382c3d Don't emit the termination lang item in tests 2017-12-26 12:26:39 +01:00
Bastian Köcher
88bf2b4630 Removes some obscure transmute call in lang_start 2017-12-26 12:26:39 +01:00
Bastian Köcher
c7a57d2855 Adds termination_trait feature gate 2017-12-26 12:26:39 +01:00
Bastian Köcher
99a108c036 Fixes compilation errors and adds proposed improvements 2017-12-26 12:26:39 +01:00
Bastian Köcher
d7918fb2e8 Implements RFC 1937: ? in main
This is the first part of the RFC 1937 that supports new
`Termination` trait in the rust `main` function.
2017-12-26 12:26:39 +01:00
kennytm
4ababefc55 Rollup merge of #46943 - malbarbo:process-test-busybox, r=alexcrichton
Fix process test when using busybox mkdir

busybox mkdir . returns 0
busybox mkdir ./ returns 1
2017-12-26 15:18:59 +08:00
kennytm
0ca5ce26ba Rollup merge of #46933 - clarcharr:float_docs, r=steveklabnik
Make core::f32/f64 docs match std.

For some reason these weren't in sync.
2017-12-26 15:18:56 +08:00
est31
6081989adc Fix docs mistake 2017-12-25 14:15:59 +01:00
bors
a6fc84440f Auto merge of #46914 - mikeyhew:raw_pointer_self, r=arielb1
Convert warning about `*const _` to a future-compat lint

#46664 was merged before I could convert the soft warning about method lookup on `*const _` into a future-compatibility lint. This PR makes that change.

fixes #46837
tracking issue for the future-compatibility lint: #46906

r? @arielb1
2017-12-25 04:55:57 +00:00
bors
c284f8807e Auto merge of #46789 - Diggsey:command-env-capture, r=dtolnay
Capture `Command` environment at spawn

Fixes #28975

This tracks a set of changes to the environment and then replays them at spawn time.
2017-12-24 20:57:20 +00:00
Corey Farwell
17380f2ac6 Minor rewrite of env::current_exe docs; clarify symlinks.
- Update example in ‘security’ section to use hard links, like the
  linked securityvulns.com example.
- Weaken language on symbolic links – indicate behavior is
  platform-specific

Fixes https://github.com/rust-lang/rust/issues/43617.
2017-12-24 11:29:13 -08:00
Diggory Blake
ccc91d7b48 Capture environment at spawn 2017-12-24 14:24:31 +00:00
est31
e5c3aac0b4 Make column macro output 1 based and document it 2017-12-24 02:20:06 +01:00
Christopher Durham
056370167a Annotate raw pointer target types
cc https://github.com/rust-lang/rust/issues/46906
cc https://github.com/rust-lang/rust/pull/46914
2017-12-23 03:47:13 -05:00
Clar Charr
a2cdeb58f6 Expose float from_bits and to_bits in libcore. 2017-12-22 21:52:52 -05:00
Michael Hewson
e94b29065f fix some errors in libstd 2017-12-22 12:40:39 -05:00
Marco A L Barbosa
dc71cab4df Fix process test when using busybox mkdir
busybox mkdir . returns 0
busybox mkdir ./ returns 1
2017-12-22 08:21:05 -02:00
Clar Charr
ebdd667d40 Make core::f32/f64 docs match std. 2017-12-21 20:32:07 -05:00
kennytm
b60e6f8285 Rollup merge of #46898 - tspiteri:int-overflow-not-underflow, r=steveklabnik
docs: do not call integer overflows as underflows

In the API docs, integer overflow is sometimes called underflow. Underflow is really when the magnitude of a floating-point number is too small so the number underflows to subnormal or zero. With integers it is always overflow, even if the expected result is less than the minimum number that can be represented.
2017-12-22 02:50:57 +08:00
Guillaume Gomez
365f7574b2 Rollup merge of #46853 - GuillaumeGomez:fix-rustdoc-warning, r=QuietMisdreavus
Fix some rustdoc warnings

r? @QuietMisdreavus

cc @steveklabnik
2017-12-21 13:18:19 +01:00
Trevor Spiteri
9d6bd0536a docs: do not call integer overflows as underflows 2017-12-21 02:39:01 +01:00
Guillaume Gomez
8835289434 Fix some rustdoc warnings 2017-12-20 17:50:02 +01:00