- Jun 26, 2020
-
-
Bill Fraser authored
-
- Mar 18, 2020
-
-
Lzu Tao authored
-
- Feb 29, 2020
-
-
Yuki Okushi authored
-
- Feb 21, 2020
-
-
Lzu Tao authored
-
- Feb 19, 2020
-
-
Noah Gold authored
-
- Oct 24, 2019
-
-
mikehoyle authored
-
- Oct 23, 2019
-
-
mikehoyle authored
-
- Sep 16, 2019
-
-
Magnus Ulimoen authored
-
- Sep 12, 2019
-
-
gnzlbg authored
-
- May 29, 2019
-
-
gnzlbg authored
-
- Feb 13, 2019
-
-
gnzlbg authored
-
- Feb 07, 2019
-
-
gnzlbg authored
This PR fixes the build on all platforms and all Rust version down to the minimum Rust version supported by libc: Rust 1.13.0. The `build.rs` is extended with logic to detect the newer Rust features used by `libc` since Rust 1.13.0: * Rust 1.19.0: `untagged_unions`. APIs using untagged unions are gated on `cfg(libc_unions)` and not available on older Rust versions. * Rust 1.25.0: `repr(align)`. Because `repr(align)` cannot be parsed by older Rust versions, all uses of `repr(align)` are split into `align.rs` and `no_align.rs` modules, which are gated on the `cfg(libc_align)` at the top level. These modules sometimes contain macros that are expanded at the top level to avoid privacy issues (`pub(crate)` is not available in older Rust versions). Closes #1242 . * Rust : `const` `mem::size_of`. These uses are worked around with hardcoded constants on older Rust versions. Also, `repr(packed)` structs cannot automatically `derive()` some traits like `Debug`. These have been moved into `s_no_extra_traits!` and the lint of missing `Debug` implementations on public items is silenced for these. We can manually implement the `extra_traits` for these in a follow up PR. This is tracked in #1243. Also, `extra_traits` does not enable `align` manually anymore. Since `f64::to_bits` is not available in older Rust versions, its usage has been replaced with a `transmute` to an `u64` which is what that method does under the hood. Closes #1232 .
-
- Feb 03, 2019
-
-
Bryant Mairs authored
-
Bryant Mairs authored
This was not compile-tested on all platforms, but instead all `pub enum` types had a `Debug` impl derived for them.
-
- Dec 23, 2018
-
-
Mackenzie Clark authored
-
Mackenzie Clark authored
-
Mackenzie Clark authored
-
- Dec 21, 2018
-
-
Mackenzie Clark authored
-
- Dec 20, 2018
-
-
Mackenzie Clark authored
-
- Dec 18, 2018
-
-
Mackenzie Clark authored
-
Mackenzie Clark authored
-
- Nov 23, 2018
-
-
Tom Parker-Shemilt authored
-
Tom Parker-Shemilt authored
-
- Nov 21, 2018
-
-
Tom Parker-Shemilt authored
-
Alex Crichton authored
This commit prepares the `libc` crate to be included directly into the standard library via crates.io. More details about this can be found on rust-lang/rust#56092, but the main idea is that this crate now depends on core/compiler-builtins explicitly (but off-by-default). The main caveat here is that this activates `no_core` when building as part of libstd, which means that it needs to explicitly have an `iter` and `option` module for the expansion of `for` loops to work.
-
gnzlbg authored
-
- Sep 12, 2017
-
-
Tamir Duberstein authored
-
- Jun 15, 2017
-
-
Kornel authored
https://msdn.microsoft.com/en-us/library/windows/hardware/ff567981(v=vs.85).aspx Matches corecrt_wtime.h from Win10 SDK
-
- Nov 10, 2016
-
-
Alex Crichton authored
In preparation for rust-lang/rust#37545 this is adding the appropriate directives to libc to get included.
-
- Sep 14, 2016
-
-
Raphael Cohn authored
Believe it or not, Windows actually defines a few POSIX 'E' error codes (eg EINVAL). By adding them to libc, the Windows bindings for things like `read()` become useful.
-
- Jul 22, 2016
-
-
ParadoxSpiral authored
-
- Mar 11, 2016
-
-
Kamal Marhubi authored
This commit changes most uses of cfg_if as follows: - fallthrough `else` usage is avoided for architecture or OS specific items - a comment is added in the final `else` clause to signal intent someone modifying It is safer to omit items than include ones for the wrong platform or architecture.
-
- Mar 02, 2016
-
-
Alex Crichton authored
It's tough to have PRs bounce or to have a back and forth with contributors about minor style quibbles. Sometimes it ends up just being easier to fix style after the fact, but let's add some automation to help this! This commit adds a script to run on CI and locally to verify the style of this repository. There's a few stylistic guidelines to ensure that definitions are understandable across the jungle of modules. This consistency should help assist readability for any future readers!
-
- Sep 23, 2015
-
-
Alex Crichton authored
-
- Sep 21, 2015
-
-
Alex Crichton authored
-
- Sep 17, 2015
-
-
Alex Crichton authored
-
Alex Crichton authored
-
Alex Crichton authored
-
Alex Crichton authored
-
- Sep 16, 2015
-
-
Alex Crichton authored
-