]> git.lizzy.rs Git - rust.git/commitdiff
Update readme to make supported codo clearer
authorWilliam Brown <william@blackhats.net.au>
Wed, 1 Apr 2020 23:50:21 +0000 (09:50 +1000)
committerWilliam Brown <william@blackhats.net.au>
Wed, 1 Apr 2020 23:50:21 +0000 (09:50 +1000)
README.md

index 03b995aa56d3fd76e9561099ccb6096b9d9b48ea..9ca69df9607fb7e3ea9aae1e14c931f07157e1fa 100644 (file)
--- a/README.md
+++ b/README.md
@@ -100,6 +100,30 @@ fn does_not_work_on_miri() {
 }
 ```
 
+An exhaustive list of what `miri` does not support is not available, as this could be
+an unbounded set with FFI and more. However `miri` will explicitly tell you when it finds
+something unsupported with an error:
+
+```
+error: unsupported operation: can't call foreign function: mach_timebase_info
+   --> /home/r/.rustup/toolchains/miri/lib/rustlib/src/rust/src/libstd/sys/unix/time.rs:239:13
+    |
+239 |             mach_timebase_info(&mut info);
+    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't call foreign function: mach_timebase_info
+    |
+    = help: this is likely not a bug in the program; it indicates that the program performed an operation that the interpreter does not support
+    = note: inside call to `std::sys::unix::time::inner::info` at /home/r/.rustup/toolchains/miri/lib/rustlib/src/rust/src/libstd/sys/unix/time.rs:156:24
+    = note: inside call to `std::sys::unix::time::inner::Instant::checked_sub_instant` at /home/r/.rustup/toolchains/miri/lib/rustlib/src/rust/src/libstd/time.rs:263:9
+note: inside call to `std::time::Instant::duration_since` at tests/run-pass/time.rs:25:20
+   --> tests/run-pass/time.rs:25:20
+    |
+25  |         let diff = now2.duration_since(now1);
+    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^
+    = note: inside call to `main` at /home/r/.rustup/toolchains/miri/lib/rustlib/src/rust/src/libstd/rt.rs:67:34
+```
+
+If you do not see an error like this, you are able to keep using `miri`!
+
 ### Running Miri on CI
 
 To run Miri on CI, make sure that you handle the case where the latest nightly