]> git.lizzy.rs Git - rust.git/log
rust.git
4 years agoAuto merge of #1162 - RalfJung:track-fn-ptr, r=RalfJung
bors [Tue, 28 Jan 2020 21:57:00 +0000 (21:57 +0000)]
Auto merge of #1162 - RalfJung:track-fn-ptr, r=RalfJung

test track_caller with fn ptrs

Looks like we already use `ReifyShim` the right way, let's just make sure we test that!

4 years agotest track_caller with fn ptrs
Ralf Jung [Tue, 28 Jan 2020 21:55:07 +0000 (22:55 +0100)]
test track_caller with fn ptrs

4 years agoAuto merge of #1148 - yoshuawuyts:patch-1, r=RalfJung
bors [Tue, 28 Jan 2020 16:25:45 +0000 (16:25 +0000)]
Auto merge of #1148 - yoshuawuyts:patch-1, r=RalfJung

Document miri can only be installed on nightly

This updates the installation instructions to point out that miri is only available on nightly, and encodes this assumption into the installation instructions.

It took me a bit of research to find out *why* miri wasn't installing on `windows-msvc`:
```txt
C:\Users\yoshu> rustup component add miri
error: component 'miri' for target 'x86_64-pc-windows-msvc' is unavailable for download for channel stable
```

I thought it must 've been something with the `msvc` target, but it turned out I was running on `stable`, and miri can only be installed on `nightly`. Having that be clearer in the installation instructions would've saved me some time debugging. Thanks!

4 years agoAuto merge of #1153 - RalfJung:uprust, r=RalfJung
bors [Sun, 26 Jan 2020 17:07:13 +0000 (17:07 +0000)]
Auto merge of #1153 - RalfJung:uprust, r=RalfJung

bump rustc

4 years agobump rustc
Ralf Jung [Sun, 26 Jan 2020 17:06:13 +0000 (11:06 -0600)]
bump rustc

4 years agoAuto merge of #1150 - divergentdave:patch-1, r=RalfJung
bors [Sat, 25 Jan 2020 20:13:21 +0000 (20:13 +0000)]
Auto merge of #1150 - divergentdave:patch-1, r=RalfJung

Shim intrinsics::atomic_singlethreadfence, etc.

This applies the no-op shim for atomic fences to `atomic_singlethreadfence` and related intrinsics.

4 years agoAdd compiler fences to test
David Cook [Sat, 25 Jan 2020 19:48:26 +0000 (13:48 -0600)]
Add compiler fences to test

4 years agoShim intrinsics::atomic_singlethreadfence, etc.
David Cook [Sat, 25 Jan 2020 01:02:58 +0000 (19:02 -0600)]
Shim intrinsics::atomic_singlethreadfence, etc.

4 years agoAuto merge of #1149 - RalfJung:rustup, r=RalfJung
bors [Sun, 19 Jan 2020 16:06:19 +0000 (16:06 +0000)]
Auto merge of #1149 - RalfJung:rustup, r=RalfJung

slice_patterns is stable now

4 years agoslice_patterns is stable now
Ralf Jung [Sun, 19 Jan 2020 16:03:18 +0000 (10:03 -0600)]
slice_patterns is stable now

4 years agoDocument miri can only be installed on nightly
Yoshua Wuyts [Sat, 18 Jan 2020 15:21:30 +0000 (16:21 +0100)]
Document miri can only be installed on nightly

This updates the installation instructions to point out that miri is only available on nightly, and encodes this assumption into the installation instructions.

4 years agoAuto merge of #1146 - RalfJung:rustup, r=RalfJung
bors [Wed, 15 Jan 2020 18:36:23 +0000 (18:36 +0000)]
Auto merge of #1146 - RalfJung:rustup, r=RalfJung

Rustup

4 years agorustup more
Ralf Jung [Wed, 15 Jan 2020 18:35:41 +0000 (19:35 +0100)]
rustup more

4 years agorustup
Ralf Jung [Wed, 15 Jan 2020 18:27:21 +0000 (19:27 +0100)]
rustup

4 years agoAuto merge of #1145 - jethrogb:patch-1, r=oli-obk
bors [Tue, 14 Jan 2020 08:01:52 +0000 (08:01 +0000)]
Auto merge of #1145 - jethrogb:patch-1, r=oli-obk

Update .gitattributes

See https://github.com/rust-lang/rust/pull/57858

4 years agoUpdate .gitattributes
jethrogb [Tue, 14 Jan 2020 04:06:58 +0000 (20:06 -0800)]
Update .gitattributes

See https://github.com/rust-lang/rust/pull/57858

4 years agoAuto merge of #1143 - christianpoveda:symlink-shim, r=RalfJung
bors [Fri, 10 Jan 2020 17:21:12 +0000 (17:21 +0000)]
Auto merge of #1143 - christianpoveda:symlink-shim, r=RalfJung

Add shim for symbolic link creation

r? @RalfJung

4 years agofix windows symlink creation
Christian Poveda [Fri, 10 Jan 2020 17:18:24 +0000 (12:18 -0500)]
fix windows symlink creation

4 years agosmall corrections
Christian Poveda [Fri, 10 Jan 2020 17:01:05 +0000 (12:01 -0500)]
small corrections

4 years agoAuto merge of #1127 - rust-lang:stacked_borrow_tracing, r=RalfJung
bors [Thu, 9 Jan 2020 11:43:26 +0000 (11:43 +0000)]
Auto merge of #1127 - rust-lang:stacked_borrow_tracing, r=RalfJung

Add a scheme for emitting errors without halting interpretation

cc #797

4 years agoDocument all the things
Oliver Scherer [Thu, 9 Jan 2020 11:42:56 +0000 (12:42 +0100)]
Document all the things

4 years agoRemove trailing newline
Oliver Scherer [Thu, 9 Jan 2020 11:38:58 +0000 (12:38 +0100)]
Remove trailing newline

4 years agoAuto merge of #1144 - RalfJung:panic-location, r=RalfJung
bors [Thu, 9 Jan 2020 10:42:02 +0000 (10:42 +0000)]
Auto merge of #1144 - RalfJung:panic-location, r=RalfJung

test that unwrap gets us the right panic location

Make sure this stuff works in Miri as well -- basically, an integration test for `track_caller` and the panic machinery (we already have more focused tests as well).

4 years agoUnwind panicking does not currently work on Windows
Ralf Jung [Thu, 9 Jan 2020 10:41:08 +0000 (11:41 +0100)]
Unwind panicking does not currently work on Windows

4 years agoalso make sure the hook actually gets called
Ralf Jung [Thu, 9 Jan 2020 10:24:41 +0000 (11:24 +0100)]
also make sure the hook actually gets called

4 years agotest that unwrap gets us the right panic location
Ralf Jung [Thu, 9 Jan 2020 10:20:13 +0000 (11:20 +0100)]
test that unwrap gets us the right panic location

4 years agoUse names that actually represent what's going on
Oliver Scherer [Wed, 8 Jan 2020 12:20:39 +0000 (13:20 +0100)]
Use names that actually represent what's going on

4 years agoMake the non-halting diagnostic scheme independent of `InterpError`
Oliver Scherer [Wed, 8 Jan 2020 12:02:55 +0000 (13:02 +0100)]
Make the non-halting diagnostic scheme independent of `InterpError`

4 years agoRemove debugging hint until we can actuall use `note:`
Oliver Scherer [Wed, 8 Jan 2020 11:50:15 +0000 (12:50 +0100)]
Remove debugging hint until we can actuall use `note:`

4 years agoProcess delayed errors on every step
Oliver Scherer [Wed, 8 Jan 2020 11:49:46 +0000 (12:49 +0100)]
Process delayed errors on every step

4 years agoTell the user about stacked borrow debugging flags
Oliver Scherer [Tue, 24 Dec 2019 01:16:43 +0000 (02:16 +0100)]
Tell the user about stacked borrow debugging flags

4 years agoEmit errors without halting interpretation
Oliver Scherer [Tue, 24 Dec 2019 01:04:07 +0000 (02:04 +0100)]
Emit errors without halting interpretation

4 years agoAdd a scheme for registering and obtaining errors even without access to an `InterpCx`
Oliver Scherer [Mon, 23 Dec 2019 23:22:32 +0000 (00:22 +0100)]
Add a scheme for registering and obtaining errors even without access to an `InterpCx`

4 years agoMove error reporting to its own module
Oliver Scherer [Mon, 23 Dec 2019 23:11:40 +0000 (00:11 +0100)]
Move error reporting to its own module

4 years agoTrailing return
Oliver Scherer [Mon, 23 Dec 2019 23:08:47 +0000 (00:08 +0100)]
Trailing return

4 years agoSplit error reporting from main eval function
Oliver Scherer [Mon, 23 Dec 2019 23:07:55 +0000 (00:07 +0100)]
Split error reporting from main eval function

4 years agoAuto merge of #1140 - RalfJung:no-macos, r=oli-obk
bors [Tue, 7 Jan 2020 20:19:51 +0000 (20:19 +0000)]
Auto merge of #1140 - RalfJung:no-macos, r=oli-obk

no longer test 32bit macOS

According to https://blog.rust-lang.org/2020/01/03/reducing-support-for-32-bit-apple-targets.html, these are tier 3 targets now, and might not be available on nightly much longer. So let's stop testing them.

4 years agoAdd lstat shim for macos
Christian Poveda [Tue, 7 Jan 2020 16:29:25 +0000 (11:29 -0500)]
Add lstat shim for macos

4 years agoClean paths for robustness
Christian Poveda [Tue, 7 Jan 2020 16:09:07 +0000 (11:09 -0500)]
Clean paths for robustness

4 years agoAuto merge of #1142 - JohnTitor:rustup-0107, r=RalfJung
bors [Tue, 7 Jan 2020 07:52:04 +0000 (07:52 +0000)]
Auto merge of #1142 - JohnTitor:rustup-0107, r=RalfJung

Rustup

r? @RalfJung

4 years agoAdd shim for symbolic link creation
Christian Poveda [Mon, 6 Jan 2020 21:30:17 +0000 (16:30 -0500)]
Add shim for symbolic link creation

4 years agoRustup
Yuki Okushi [Mon, 6 Jan 2020 19:53:41 +0000 (04:53 +0900)]
Rustup

4 years agoAuto merge of #1141 - RalfJung:lint-adjust, r=RalfJung
bors [Mon, 6 Jan 2020 10:39:24 +0000 (10:39 +0000)]
Auto merge of #1141 - RalfJung:lint-adjust, r=RalfJung

remove no-longer-needed allow(const_err)

4 years agoremove no-longer-needed allow(const_err)
Ralf Jung [Mon, 6 Jan 2020 10:38:35 +0000 (11:38 +0100)]
remove no-longer-needed allow(const_err)

4 years agofix testing if a variable exists
Ralf Jung [Mon, 6 Jan 2020 10:02:25 +0000 (11:02 +0100)]
fix testing if a variable exists

4 years agono longer test 32bit macOS
Ralf Jung [Mon, 6 Jan 2020 09:43:41 +0000 (10:43 +0100)]
no longer test 32bit macOS

4 years agoAuto merge of #1137 - anp:track-caller-update, r=RalfJung
bors [Mon, 6 Jan 2020 09:11:56 +0000 (09:11 +0000)]
Auto merge of #1137 - anp:track-caller-update, r=RalfJung

Update panic machinery to match #[track_caller] changes.

This gets miri's tests passing again with https://github.com/rust-lang/rust/pull/67137, I don't think it will pass CI until that has merged.

4 years agoMore rustup
Yuki Okushi [Mon, 6 Jan 2020 04:22:24 +0000 (13:22 +0900)]
More rustup

4 years agoRustup
Yuki Okushi [Sun, 5 Jan 2020 08:53:45 +0000 (17:53 +0900)]
Rustup

4 years agoUpdate panic machinery to match #[track_caller] changes.
Adam Perry [Wed, 1 Jan 2020 22:57:10 +0000 (14:57 -0800)]
Update panic machinery to match #[track_caller] changes.

This gets miri's tests passing again with https://github.com/rust-lang/rust/pull/67137.

4 years agoAuto merge of #1139 - RalfJung:fixme, r=RalfJung
bors [Thu, 2 Jan 2020 14:58:15 +0000 (14:58 +0000)]
Auto merge of #1139 - RalfJung:fixme, r=RalfJung

note a FIXME

Cc @wesleywiser

4 years agonote a FIXME
Ralf Jung [Thu, 2 Jan 2020 14:57:33 +0000 (15:57 +0100)]
note a FIXME

4 years agoAuto merge of #1138 - wesleywiser:fix_miri_after_cast_truncation_checking, r=oli-obk
bors [Thu, 2 Jan 2020 10:53:10 +0000 (10:53 +0000)]
Auto merge of #1138 - wesleywiser:fix_miri_after_cast_truncation_checking, r=oli-obk

Bump rustc version to fix miri

Fixes rust-lang/rust#67793

4 years agoBump rustc version to fix miri
Wesley Wiser [Thu, 2 Jan 2020 02:33:51 +0000 (21:33 -0500)]
Bump rustc version to fix miri

4 years agoAuto merge of #1135 - Aaron1011:rustup-plain, r=RalfJung
bors [Wed, 1 Jan 2020 14:24:09 +0000 (14:24 +0000)]
Auto merge of #1135 - Aaron1011:rustup-plain, r=RalfJung

Rustup

This is mainly to see if CI can reproduce a strange issue I'm running
into locally

4 years agoRustup
Aaron Hill [Wed, 1 Jan 2020 08:22:06 +0000 (03:22 -0500)]
Rustup

This is mainly to see if CI can reproduce a strange issue I'm running
into locally

4 years agoAuto merge of #1134 - RalfJung:macos-hashmap, r=RalfJung
bors [Tue, 31 Dec 2019 11:19:26 +0000 (11:19 +0000)]
Auto merge of #1134 - RalfJung:macos-hashmap, r=RalfJung

test macOS hashmap

With https://github.com/rust-lang/miri/pull/1130 landed, this should work now. Thanks @christianpoveda!

Fixes https://github.com/rust-lang/miri/issues/686

4 years agofix imports
Ralf Jung [Tue, 31 Dec 2019 11:10:52 +0000 (12:10 +0100)]
fix imports

4 years agowith FS access, default HashMap should work on macOS
Ralf Jung [Tue, 31 Dec 2019 11:06:42 +0000 (12:06 +0100)]
with FS access, default HashMap should work on macOS

4 years agoAuto merge of #1130 - christianpoveda:ignore-close-read-only, r=RalfJung
bors [Tue, 31 Dec 2019 11:00:08 +0000 (11:00 +0000)]
Auto merge of #1130 - christianpoveda:ignore-close-read-only, r=RalfJung

Ignore close errors in read-only files.

this fixes https://github.com/rust-lang/miri/issues/999

r? @RalfJung

4 years agoavoid double negation
Christian Poveda [Mon, 30 Dec 2019 22:26:17 +0000 (17:26 -0500)]
avoid double negation

4 years agoAuto merge of #1131 - JOE1994:alloc_os_str_as_c_str, r=RalfJung
bors [Mon, 30 Dec 2019 19:15:53 +0000 (19:15 +0000)]
Auto merge of #1131 - JOE1994:alloc_os_str_as_c_str, r=RalfJung

Add helper 'alloc_os_str_as_c_str' and use it in env_var emulation

First part of the plan laid out in #707 (comment).

Re-submitting a pull-request for work from  #1098 (manual rebasing..)

r? @RalfJung

4 years agoadd comments
Christian Poveda [Fri, 27 Dec 2019 14:11:21 +0000 (09:11 -0500)]
add comments

4 years agoAuto merge of #1133 - RalfJung:compile-fail-opt, r=RalfJung
bors [Sun, 29 Dec 2019 11:39:31 +0000 (11:39 +0000)]
Auto merge of #1133 - RalfJung:compile-fail-opt, r=RalfJung

compile-fail tests work with optimizations now

4 years agocompile-fail tests work with optimizations now
Ralf Jung [Sun, 29 Dec 2019 11:38:40 +0000 (12:38 +0100)]
compile-fail tests work with optimizations now

4 years agoAuto merge of #1132 - christianpoveda:use_scalar_to_u16, r=RalfJung
bors [Sat, 28 Dec 2019 14:14:43 +0000 (14:14 +0000)]
Auto merge of #1132 - christianpoveda:use_scalar_to_u16, r=RalfJung

Use Scalar::to_u16

https://github.com/rust-lang/rust/pull/67604#issuecomment-569413675 r? @RalfJung

4 years agobump rustc version
Christian Poveda [Sat, 28 Dec 2019 14:09:42 +0000 (09:09 -0500)]
bump rustc version

4 years agoUse Scalar::to_u16
Christian Poveda [Sat, 28 Dec 2019 13:38:31 +0000 (08:38 -0500)]
Use Scalar::to_u16

4 years agoAdd helper 'alloc_os_str_as_c_str' and use it in env_var emulation
JOE1994 [Sat, 28 Dec 2019 01:32:20 +0000 (20:32 -0500)]
Add helper 'alloc_os_str_as_c_str' and use it in env_var emulation

4 years agoAuto merge of #1114 - rust-lang:to_ptr_considered_harmful, r=oli-obk
bors [Fri, 27 Dec 2019 13:50:31 +0000 (13:50 +0000)]
Auto merge of #1114 - rust-lang:to_ptr_considered_harmful, r=oli-obk

Remove all uses of `to_ptr`

Also only works on top of https://github.com/rust-lang/rust/pull/67192

4 years agoavoid excluding TERM env var
Christian Poveda [Fri, 27 Dec 2019 13:37:52 +0000 (08:37 -0500)]
avoid excluding TERM env var

4 years agoclose file silently if the file is read only
Christian Poveda [Fri, 27 Dec 2019 13:34:35 +0000 (08:34 -0500)]
close file silently if the file is read only

4 years agoRemove `to_ptr` uses
Oliver Scherer [Fri, 27 Dec 2019 13:26:05 +0000 (14:26 +0100)]
Remove `to_ptr` uses

4 years agoAuto merge of #1129 - christianpoveda:stat64-shim, r=RalfJung
bors [Fri, 27 Dec 2019 08:41:03 +0000 (08:41 +0000)]
Auto merge of #1129 - christianpoveda:stat64-shim, r=RalfJung

add stat shim for macos

Here we go. I'm apologizing in advice for the constant torture that Travis will suffer.

4 years agorename metadata struct
Christian Poveda [Thu, 26 Dec 2019 18:30:04 +0000 (13:30 -0500)]
rename metadata struct

4 years agominor fixes and updated docs
Christian Poveda [Thu, 26 Dec 2019 17:12:19 +0000 (12:12 -0500)]
minor fixes and updated docs

4 years agoset mask for statx correctly
Christian Poveda [Thu, 26 Dec 2019 03:22:25 +0000 (22:22 -0500)]
set mask for statx correctly

4 years agodo padding correctly
Christian Poveda [Wed, 25 Dec 2019 23:22:33 +0000 (18:22 -0500)]
do padding correctly

4 years agodeduplicate shared code between stat and statx
Christian Poveda [Wed, 25 Dec 2019 21:09:54 +0000 (16:09 -0500)]
deduplicate shared code between stat and statx

4 years agoAdd padding on 64-bits only
Christian Poveda [Wed, 25 Dec 2019 16:39:57 +0000 (11:39 -0500)]
Add padding on 64-bits only

4 years agorestrict `stat` shim to macos only
Christian Poveda [Wed, 25 Dec 2019 16:30:01 +0000 (11:30 -0500)]
restrict `stat` shim to macos only

4 years agoremove restrictions due to `stat` unavailability
Christian Poveda [Wed, 25 Dec 2019 16:27:25 +0000 (11:27 -0500)]
remove restrictions due to `stat` unavailability

4 years agoadd padding to immediates
Christian Poveda [Wed, 25 Dec 2019 15:32:34 +0000 (10:32 -0500)]
add padding to immediates

4 years agofix size for file mode
Christian Poveda [Tue, 24 Dec 2019 17:10:36 +0000 (12:10 -0500)]
fix size for file mode

4 years agoadd remanining fields to stat stuct
Christian Poveda [Tue, 24 Dec 2019 16:53:03 +0000 (11:53 -0500)]
add remanining fields to stat stuct

4 years agoprovide correct name for shim
Christian Poveda [Tue, 24 Dec 2019 16:21:00 +0000 (11:21 -0500)]
provide correct name for shim

4 years agoadd dummy stat shim
Christian Poveda [Tue, 24 Dec 2019 16:01:01 +0000 (11:01 -0500)]
add dummy stat shim

4 years agoAuto merge of #1128 - RalfJung:cleanup, r=RalfJung
bors [Tue, 24 Dec 2019 10:48:05 +0000 (10:48 +0000)]
Auto merge of #1128 - RalfJung:cleanup, r=RalfJung

use new try_from methods

and a bit of other cleanup

4 years agomake bytes conversion functions private inside read/write functions
Ralf Jung [Tue, 24 Dec 2019 10:46:02 +0000 (11:46 +0100)]
make bytes conversion functions private inside read/write functions

4 years agouse new try_from methods
Ralf Jung [Tue, 24 Dec 2019 10:43:42 +0000 (11:43 +0100)]
use new try_from methods

4 years agoAuto merge of #1121 - rust-lang:rustup, r=RalfJung
bors [Mon, 23 Dec 2019 22:03:15 +0000 (22:03 +0000)]
Auto merge of #1121 - rust-lang:rustup, r=RalfJung

Rustup to rustc 1.42.0-nightly (005cf38f7 2019-12-22)

4 years agoRustup to rustc 1.42.0-nightly (005cf38f7 2019-12-22)
Oliver Scherer [Sun, 22 Dec 2019 09:05:52 +0000 (10:05 +0100)]
Rustup to rustc 1.42.0-nightly (005cf38f7 2019-12-22)

4 years agoAuto merge of #1124 - RalfJung:sysroot-check, r=oli-obk
bors [Mon, 23 Dec 2019 17:14:48 +0000 (17:14 +0000)]
Auto merge of #1124 - RalfJung:sysroot-check, r=oli-obk

disable sysroot checks for distributed binaries

This should help with https://github.com/mozilla/nixpkgs-mozilla/issues/198.

4 years agoAuto merge of #1125 - RalfJung:main-result, r=oli-obk
bors [Mon, 23 Dec 2019 16:51:55 +0000 (16:51 +0000)]
Auto merge of #1125 - RalfJung:main-result, r=oli-obk

support main functions with Result return type

Turns out we already properly create the substitution to call the libstd start-fn with an appropriate `main`, we just had an overzealous check in the way.

Fixes https://github.com/rust-lang/miri/issues/1116.

4 years agosupport main functions with Result return type
Ralf Jung [Mon, 23 Dec 2019 16:44:02 +0000 (17:44 +0100)]
support main functions with Result return type

4 years agoAuto merge of #1118 - rust-lang:stacked_borrow_tracing, r=oli-obk
bors [Mon, 23 Dec 2019 11:56:51 +0000 (11:56 +0000)]
Auto merge of #1118 - rust-lang:stacked_borrow_tracing, r=oli-obk

Run rustfmt

This is `cargo +nightly fmt --all` with `rustc 1.41.0-nightly (c8ea4ace9 2019-12-14)`

4 years agoRustfmt all the things
Oliver Scherer [Mon, 23 Dec 2019 11:56:23 +0000 (12:56 +0100)]
Rustfmt all the things

4 years agodisable sysroot checks for distributed binaries
Ralf Jung [Sun, 22 Dec 2019 17:13:13 +0000 (18:13 +0100)]
disable sysroot checks for distributed binaries

4 years agoAuto merge of #1101 - christianpoveda:stat-shim, r=RalfJung
bors [Sun, 22 Dec 2019 17:01:53 +0000 (17:01 +0000)]
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

4 years agoadd `statx` shim for linux
Christian Poveda [Sat, 30 Nov 2019 20:09:52 +0000 (15:09 -0500)]
add `statx` shim for linux