Commit Graph

952 Commits

Author SHA1 Message Date
David Cook
f7e0857644 Test that src path of rename is no longer a file 2020-02-08 22:40:46 -06:00
David Cook
38204b6321 Add shim for rename 2020-02-08 22:33:49 -06:00
bors
f9615bfd67 Auto merge of #1159 - divergentdave:shim-seek, r=RalfJung
Add shim for seeking files

This adds a shim for `lseek64` (`lseek` on macOS). This enables the use of `<File as Seek>::seek`. Testing is included.
2020-02-08 13:54:33 +00:00
Ralf Jung
45f6744fda panics dont work on Windows, just the smoke test should be enough 2020-02-07 14:20:42 +01:00
Ralf Jung
418dd641dc test more generator resume things 2020-02-07 14:02:36 +01:00
Ralf Jung
d208a5fe3b rustup; fix generator test 2020-02-07 14:02:27 +01:00
David Cook
98a1cac4ef Add tests to cover SEEK_CUR and SEEK_END 2020-02-06 17:50:33 -06:00
Ralf Jung
5d2caef3ce also test div-by-minus-1 2020-02-06 11:24:38 +01:00
Ralf Jung
4b6a0d7a8e bump rustc; adjust tests 2020-02-06 11:20:28 +01:00
bors
9c0b89cff7 Auto merge of #1163 - RalfJung:raw-cast, r=RalfJung
Test raw-ptr-cast without reborrow

With https://github.com/rust-lang/rust/pull/64588 landed, we can finally test these things adequately. :)
2020-01-30 22:20:36 +00:00
bors
e7f5c4f155 Auto merge of #1151 - divergentdave:statx-AT_EMPTY_PATH, r=RalfJung
Add support for AT_EMPTY_PATH to statx shim

This enables use of `File::metadata()`.
2020-01-30 21:30:32 +00:00
Ralf Jung
b2c9871f7d update another comment 2020-01-30 13:29:55 +01:00
Ralf Jung
3cf413e4c2 remove inadequate comment 2020-01-30 12:22:54 +01:00
Ralf Jung
e0adfe4d45 new compile-fail test involving non-reborrowing-cast-to-raw 2020-01-30 12:22:15 +01:00
Ralf Jung
acd156d722 add test that relies on non-reborrowing-cast-to-raw 2020-01-30 12:17:02 +01:00
bors
aff1e43137 Auto merge of #1154 - TimDiekmann:rename-alloc, r=RalfJung
Rename `Alloc` to `AllocRef`

Required to land https://github.com/rust-lang/rust/pull/68529. Please see that PR for details. The CI is expected to fail until the PR is landed.
2020-01-29 21:44:06 +00:00
bors
8c5dee6f88 Auto merge of #1155 - divergentdave:shim-posix_fadivse, r=RalfJung
Add no-op shim for posix_fadvise

This function is present in the libc crate, but not exposed through the standard library anywhere, so I haven't included a test for it.
2020-01-29 21:24:30 +00:00
Tim Diekmann
3d8bf92a11
Rename Alloc to AllocRef
Required to land https://github.com/rust-lang/rust/pull/68529. Please see that PR for details. The CI is expected to fail until the PR is landed.
2020-01-29 04:10:33 +01:00
David Cook
a30914bcdd Conditional compilation fix 2020-01-28 20:39:06 -06:00
David Cook
a39a5f8189 Disable posix_fadvise test on macOS, not in libc 2020-01-28 19:57:56 -06:00
David Cook
2a2dde1494 Try fixing test on i686-unknown-linux-gnu 2020-01-28 19:04:16 -06:00
David Cook
b2d404d19a Move posix_fadvise test to new libc test file 2020-01-28 18:59:49 -06:00
Ralf Jung
9f6df67238 test track_caller with fn ptrs 2020-01-28 22:55:07 +01:00
David Cook
4e42e77483 Add test for posix_fadvise 2020-01-27 06:28:45 -06:00
David Cook
03b5d95cff Add shim for lseek64 2020-01-26 12:36:36 -06:00
David Cook
d94b88ef98 Add support for AT_EMPTY_PATH to statx shim 2020-01-25 22:21:33 -06:00
David Cook
9265e0cd5e Add compiler fences to test 2020-01-25 13:48:26 -06:00
Ralf Jung
b2303a7da1 slice_patterns is stable now 2020-01-19 10:03:18 -06:00
bors
b4c54b4641 Auto merge of #1143 - christianpoveda:symlink-shim, r=RalfJung
Add shim for symbolic link creation

r? @RalfJung
2020-01-10 17:21:12 +00:00
Christian Poveda
0b5a30515e
small corrections 2020-01-10 12:01:05 -05:00
Ralf Jung
833816dd35 Unwind panicking does not currently work on Windows 2020-01-09 11:41:08 +01:00
Ralf Jung
e9b4323048 also make sure the hook actually gets called 2020-01-09 11:24:41 +01:00
Ralf Jung
b1676a3e89 test that unwrap gets us the right panic location 2020-01-09 11:20:13 +01:00
Christian Poveda
329310fbd6
Clean paths for robustness 2020-01-07 11:09:07 -05:00
Christian Poveda
4a1dbc77dc
Add shim for symbolic link creation 2020-01-06 16:30:17 -05:00
Ralf Jung
0217a25a12 remove no-longer-needed allow(const_err) 2020-01-06 11:38:35 +01:00
Ralf Jung
c68996dda7 note a FIXME 2020-01-02 15:57:33 +01:00
Wesley Wiser
959033cbfb Bump rustc version to fix miri 2020-01-01 21:33:51 -05:00
Ralf Jung
31fbb5a9b2 fix imports 2019-12-31 12:10:52 +01:00
Ralf Jung
e1fceafcea with FS access, default HashMap should work on macOS 2019-12-31 12:06:42 +01:00
Ralf Jung
e952e37a39 compile-fail tests work with optimizations now 2019-12-29 12:38:40 +01:00
Christian Poveda
75f7a118e6
remove restrictions due to stat unavailability 2019-12-25 12:38:34 -05:00
Christian Poveda
d9ecd77ada
add dummy stat shim 2019-12-25 08:27:49 -05:00
Ralf Jung
e325ad24f2 support main functions with Result return type 2019-12-23 17:45:23 +01:00
Oliver Scherer
7ead530841 Rustfmt all the things 2019-12-23 12:56:23 +01:00
bors
a3ea1cb458 Auto merge of #1101 - christianpoveda:stat-shim, r=RalfJung
Add statx shim for linux target

This is an attempt to fix: https://github.com/rust-lang/miri/issues/999 (for linux only)

Currently there is one problem that I haven't been able to solve. `std::fs::metadata` fails because the creation time is not available even though it is provided in the shim code.

In order to inform the caller that the field was provided, the `stx_flag` field must have the bits of `STATX_BTIME` set (which they are). The creation time is in the `stx_btime` field of the `statx` struct (see [1]). The relevant code in `libstd` is here (probably?): https://github.com/rust-lang/rust/blob/master/src/libstd/sys/unix/fs.rs#L322

Another important point is that we are just providing the fields that are available in "all" platforms (this is, without using any platform specific traits or so). This can be improved later.

References:
[1] Man page: http://man7.org/linux/man-pages/man2/statx.2.html
[2] libc `statx` struct: https://docs.rs/libc/0.2.63/libc/struct.statx.html

Edit: The problem is that my filesystem is not providing it and I thought all filesystems could provide it. I changed the code so it only provides those dates if they are available. now we are ready to go.

r? @RalfJung @oli-obk
2019-12-22 17:01:53 +00:00
Christian Poveda
b0c7625dd1
add statx shim for linux 2019-12-22 11:46:02 -05:00
Oliver Scherer
d9859c83fc Rustup to rustc 1.42.0-nightly (9ff30a781 2019-12-21) 2019-12-21 11:45:09 +01:00
Ralf Jung
74ef63ff0a the never type got de-stabilized again; adjust tests 2019-12-15 12:23:43 +01:00
Ralf Jung
f0d43872ad add test for sketchy vtable 2019-12-13 13:19:48 +01:00