Commit graph

13366 commits

Author SHA1 Message Date
Alex Crichton
8fe65da935 std: Remove the wasm_syscall feature
This commit removes the `wasm_syscall` feature from the
wasm32-unknown-unknown build of the standard library. This feature was
originally intended to allow an opt-in way to interact with the
operating system in a posix-like way but it was never stabilized.
Nowadays with the advent of the `wasm32-wasi` target that should
entirely replace the intentions of the `wasm_syscall` feature.
2019-08-28 08:34:31 -07:00
Mazdak Farrokhzad
68597c7641
Rollup merge of #63698 - Phosphorus15:master, r=nagisa
Fixed floating point issue with asinh function

This should fixes #63271 , in which `asinh(-0.0)` returns `0.0` instead of `-0.0`.
according to @nagisa
>
>
> IEEE-754 (2008), section 9.2.1:
>
> > For the functions expm1, exp2m1, exp10m1, logp1, log2p1, log10p1, sin, tan, sinPi, atanPi, asin, atan, sinh, tanh, asinh, and atanh, f(+0) is +0 and f(−0) is −0 with no exception.
>
> and
>
> > sinh(±∞) and asinh(±∞) are ±∞ with no exception.

After ensuring that the function `asinh` is the only function affected (functions like `sin`, `sinh` are all based on `cmath` library or `llvm` intrinsics), and that `atanh` always gives the correct result. The only function to modify is `asinh`.
2019-08-27 08:17:49 +02:00
Mazdak Farrokhzad
9eeb7d566e
Rollup merge of #63836 - Wind-River:master_003, r=alexcrichton
VxWorks does not provide a way to set the task name except at creation time

Make set_name do thing as VxWorks does not provide a way to set the task name except at creation time.

r? @alexcrichton

cc @n-salim
2019-08-26 23:55:46 +02:00
bors
4993524682 Auto merge of #63814 - malbarbo:wasi-error-kind, r=alexcrichton
Implement decode_error_kind for wasi

Based on the implementation for unix targets,
2019-08-23 22:09:07 +00:00
Baoshan Pang
912feabfc2 VxWorks does not provide a way to set the task name except at creation time 2019-08-23 14:39:38 -07:00
Marco A L Barbosa
c8838efe35 Implement decode_error_kind for wasi
Based on the implementation for unix targets
2019-08-23 10:48:38 -03:00
bors
3def0f3d5b Auto merge of #63815 - sebastinez:sebastinez-doc-#63792, r=jonas-schievink
Update occurences of as_slice to as_str in comments

Fix #63792
2019-08-23 12:40:32 +00:00
bors
f834695781 Auto merge of #63521 - newpavlov:redox_builder, r=pietroalbini
Re-enable Redox builder (take 2)

Closes: #63160
2019-08-23 08:58:24 +00:00
Sebastian Martinez
03507a1688
Update occurences of as_slice
Update occurences of as_slice to as_str
2019-08-22 16:16:22 -03:00
Tomasz Różański
d9f3258186 Fix for 7e13679. 2019-08-22 19:27:16 +02:00
Tomasz Różański
eae5d77995 Change variables names to be more consistent.
Changed all instances of `c_str` into `cstr` in the documentation examples. This is also consistent with the module source code.
2019-08-22 15:09:03 +02:00
Tomasz Różański
cdedd268d2 Make use of existing constants.
f32::consts::PI / 2.0 -> f32::consts::FRAC_PI_2
f32::consts::PI / 4.0 -> f32::consts::FRAC_PI_4
f64::consts::PI / 2.0 -> f64::consts::FRAC_PI_2
f64::consts::PI / 4.0 -> f64::consts::FRAC_PI_4
2019-08-22 14:59:31 +02:00
Tomasz Różański
3b04e91d27 Change code formatting for readability. 2019-08-22 14:27:51 +02:00
Tomasz Różański
49dce2935f Fix punctuation. 2019-08-22 13:14:42 +02:00
Tomasz Różański
7e13679cde Remove redundant mut. 2019-08-22 13:12:31 +02:00
bors
bea0372a1a Auto merge of #63752 - Centril:rollup-nlxwety, r=Centril
Rollup of 4 pull requests

Successful merges:

 - #62497 (Fix double resolving custom libdir)
 - #63209 (Stabilize `async_await` in Rust 1.39.0)
 - #63746 (Cherry-pick src/test changes with Centril's changes)
 - #63750 (rustc_metadata: replace LazySeq<T> with Lazy<[T]>.)

Failed merges:

r? @ghost
2019-08-20 18:33:16 +00:00
Mazdak Farrokhzad
3662a9fb04
Rollup merge of #63723 - josephlr:sigemptyset, r=alexcrichton
Consolidate sigemptyset workarounds

In sys/unix/process, we work around the sigemptyset linking issues
on android in two different ways. This change consolidates these
workarounds, and avoids duplicating bindings from `libc`.
2019-08-20 16:26:41 +02:00
Mazdak Farrokhzad
a5299dd5d1
Rollup merge of #63216 - oconnor663:take_read_to_end, r=sfackler
avoid unnecessary reservations in std::io::Take::read_to_end

Prevously the `read_to_end` implementation for `std::io::Take` used its
own `limit` as a cap on the `reservation_size`. However, that could
still result in an over-allocation like this:

1. Call `reader.take(5).read_to_end(&mut vec)`.
2. `read_to_end_with_reservation` reserves 5 bytes and calls `read`.
3. `read` writes 5 bytes.
4. `read_to_end_with_reservation` reserves 5 bytes and calls `read`.
5. `read` writes 0 bytes.
6. The read loop ends with `vec` having length 5 and capacity 10.

The reservation of 5 bytes was correct for the read at step 2 but
unnecessary for the read at step 4. By that second read, `Take::limit`
is 0, but the `read_to_end_with_reservation` loop is still using the
same `reservation_size` it started with.

Solve this by having `read_to_end_with_reservation` take a closure,
which lets it get a fresh `reservation_size` for each read. This is an
implementation detail which doesn't affect any public API.
2019-08-20 16:26:34 +02:00
Artyom Pavlov
e500fc3171
Merge branch 'master' into redox_builder 2019-08-20 10:08:57 +00:00
Phosphorus15
e33d8707c8 Refined implementations of asinh and acosh 2019-08-20 15:12:41 +08:00
Phosphorus15
535efa4afd Used copysign to avoid unnecessary branches. 2019-08-20 12:39:12 +08:00
Mazdak Farrokhzad
b0d4782948 Stabilize 'async_await'. 2019-08-20 02:38:02 +02:00
Joe Richey
8e91dca596 Consolidate sigemptyset workarounds
In sys/unix/process, we work around the sigemptyset linking issues
on android in two different ways. This change consolidates these
workarounds, and avoids duplicating bindings from `libc`.
2019-08-19 16:15:34 -07:00
Mazdak Farrokhzad
ac34594209
Rollup merge of #63704 - Wind-River:master, r=Centril
Fixed: error: unnecessary trailing semicolon
2019-08-19 22:48:59 +02:00
Artyom Pavlov
34c9f8c649
remove any from cfgs 2019-08-19 20:02:50 +00:00
Artyom Pavlov
1dd2d3076d
cfg fix 2 2019-08-19 20:01:02 +00:00
Artyom Pavlov
1417f53863
fix cfg 2019-08-19 19:58:35 +00:00
Alex Crichton
1301b100ca std: Update backtrace crate dependency
This commit updates the `backtrace` crate from 0.3.34 to 0.3.35. The
[included set of changes][changes] for this update mostly includes some
gimli-related improvements (not relevant for the standard library) but
critically includes a fix for rust-lang/backtrace-rs#230. The standard
library will not aqcuire a session-local lock whenever a backtrace is
generated on Windows to allow external synchronization with the
`backtrace` crate itself, allowing `backtrace` to be safely used while
other threads may be panicking.

[changes]: https://github.com/rust-lang/backtrace-rs/compare/0.3.34...0.3.35
2019-08-19 06:13:18 -07:00
Phosphorus15
64e3a10a82 test cases for both f32 and f64 on asinh(-0.0) 2019-08-19 17:29:37 +08:00
Phosphorus15
c4569347b2 Added negative cases for asinh according to IEEE-754. 2019-08-19 17:22:08 +08:00
Salim Nasser
f0b394bfb6 Fixed: error: unnecessary trailing semicolon 2019-08-17 18:56:38 -07:00
Mazdak Farrokhzad
cd21715c34
Rollup merge of #63613 - petrochenkov:stdhyg, r=alexcrichton
Hygienize use of built-in macros in the standard library

Same as https://github.com/rust-lang/rust/pull/61629, but for built-in macros.

Closes https://github.com/rust-lang/rust/issues/48781
r? @alexcrichton
2019-08-16 18:22:30 +02:00
Simon Sapin
59a340963f Add the Layout of the failed allocation to TryReserveError::AllocError
… and add a separately-unstable field to force non-exhaustive matching
(`#[non_exhaustive]` is no implemented yet on enum variants)
so that we have the option to later expose the allocator’s error value.

CC https://github.com/rust-lang/wg-allocators/issues/23
2019-08-16 18:08:37 +02:00
Simon Sapin
a92c29b238 Update hashbrown to 0.5.0 2019-08-16 18:08:35 +02:00
Simon Sapin
36b18a1901 Rename CollectionAllocError to TryReserveError 2019-08-16 18:08:06 +02:00
Vadim Petrochenkov
263e3c5950 Remove __rust_unstable_column 2019-08-15 22:58:57 +03:00
Vadim Petrochenkov
a9ecfd7295 Hygienize use of built-in macros in the standard library 2019-08-15 22:58:50 +03:00
Mazdak Farrokhzad
e452738000
Rollup merge of #63546 - lzutao:clouldabi-maybeuninit, r=RalfJung
Remove uses of `mem::uninitialized()` from cloudabi

This PR removes uses of `mem::uninitialized` from `cloudabi` module,
excluding the layout test in `src/libstd/sys/cloudabi/abi/cloudabi.rs`.

r? @RalfJung
cc @EdSchouten
cc #62397
2019-08-15 14:34:04 +02:00
Mazdak Farrokhzad
1db4bbcced
Rollup merge of #63155 - mfkl:uwp-msvc, r=alexcrichton
Add UWP MSVC targets

Hi,

- The README URI change is the correct one for VS2019 community edition, which I suspect most people would use. Doesn't _need_ to be merged though.
- This 5e6619edd1 fixes the UWP build (msvc or not, doesn't matter). I suspect it broke with recent changes unnoticed because no CI.
- Store lib location is found through the VCToolsInstallDir env variable. The end of the path is currently for the VS2019 store lib locations only.
- I could not test the aarch64_uwp_windows_msvc target because the rust build script does not currently support arm64 msvc AFAIU.
2019-08-15 14:33:58 +02:00
Lzu Tao
6e8639a418 Remove uses of mem::uninitialized() from cloudabi 2019-08-15 09:04:49 +00:00
Mark Rousskov
2601c86487 Handle cfg(bootstrap) throughout 2019-08-14 05:39:53 -04:00
Mazdak Farrokhzad
9d297190c8
Rollup merge of #63480 - OptimisticPeach:patch-1, r=Centril
Fixes #63477

Adds a closing parenthesis.
2019-08-12 10:58:24 +02:00
Mazdak Farrokhzad
4d27aaccf1
Rollup merge of #63461 - tommilligan:doc-var-panic, r=joshtriplett
docs: add stdlib env::var(_os) panic

Closes #63456
2019-08-12 10:58:19 +02:00
OptimisticPeach
3d38187afd
Fixes #63477
Adds a closing parenthesis.
2019-08-12 00:15:14 -04:00
Mark Rousskov
88629778e6
Rollup merge of #61969 - MikailBag:master, r=Centril
Add #[repr(transparent)] for several types

In some functions, types mentioned in this PR are transmuted into their inner value.
Example for `PathBuf`: https://github.com/rust-lang/rust/blob/master/src/libstd/path.rs#L1132.
This PR adds `#[repr(transparent)]` to those types, so their correct behavior doesn't depend on compiler details. (As far as I understand, currently that line, converting `PathBuf` to `Vec<u8>`, is UB).
2019-08-11 15:18:38 -04:00
Tom Milligan
af5625dc85 docs: add stdlib env::var(_os) panic 2019-08-11 12:49:02 +01:00
Mazdak Farrokhzad
6743ad6726
Rollup merge of #63350 - iluuu1994:use-associated-type-bounds, r=Centril
Use associated_type_bounds where applicable - closes #61738
2019-08-10 08:13:19 +02:00
Vadim Petrochenkov
cbcc7dd182 Give built-in macros stable addresses in the standard library 2019-08-10 00:05:37 +03:00
Mikail Bagishov
740f8db855
Add FIXME-s that some types should be transparent 2019-08-09 17:41:40 +03:00
Ilija Tovilo
3d231accee
Add missing #![feature(associated_type_bounds)] 2019-08-09 11:19:45 +02:00