Ralf Jung
b0a205ce6f
add caller_location tests to Miri
2019-12-08 11:06:35 +01:00
Ralf Jung
e92d16d9cd
add flag to ignore memory leaks
2019-12-07 13:44:48 +01:00
Ralf Jung
ce7b44b048
ignore another panicking test on Windows
2019-12-02 16:48:18 +01:00
Ralf Jung
ae53b1222a
fix and expand panic tests
2019-12-02 16:04:31 +01:00
Ralf Jung
4cf83433b1
test built-in panic catching
2019-12-02 16:04:31 +01:00
Ralf Jung
9f9e547d79
test diverging closure fn ptr coercion
2019-12-02 15:42:33 +01:00
Ralf Jung
bba9359256
expand coerce fn test
2019-12-02 15:42:33 +01:00
Ralf Jung
1c420b0b55
improve style in catch_panic test
2019-12-02 09:11:33 +01:00
Ralf Jung
f7efe238f3
fix catch_panic.stderr
2019-12-01 11:04:51 +01:00
Ralf Jung
2789e72e18
test more panics
2019-12-01 11:04:32 +01:00
Ralf Jung
2152258b04
and another reference
2019-11-25 15:10:39 +01:00
Ralf Jung
66dc939787
rename some more tests
2019-11-25 15:08:47 +01:00
Ralf Jung
d16e12b0a4
rename test and add some references
2019-11-25 15:08:24 +01:00
Ralf Jung
51d47e8dc5
test closure-to-fn-ptr coercions a bit more
2019-11-25 15:01:05 +01:00
Ralf Jung
35e1fe1665
also test non-string panic payload
2019-11-24 10:51:48 +01:00
Ralf Jung
ee411c2a74
beef up catch_panic test
2019-11-24 10:24:41 +01:00
bors
644e2a76a8
Auto merge of #1067 - Aaron1011:feature/inverse-trig, r=RalfJung
...
Add acos, asin, and atan foreign functions
I copied the tests from the docs pages
2019-11-22 09:23:24 +00:00
Ralf Jung
6888555ca9
rustup for never stabilization
2019-11-22 09:50:22 +01:00
Aaron Hill
a328683c4a
Add acos, asin, and atan foreign functions
...
I copied the tests from the docs pages
2019-11-21 17:33:30 -05:00
Ralf Jung
f16f891191
slice matching overflow got fixed
2019-11-20 19:38:41 +01:00
Aaron Hill
80f9484c86
Disable panic tests on Windows
...
Miri currently does not support `GetProcAddress`
and `GetModuleHandleW`, both of which end up getting invoked by the
libstd panic hook.
2019-11-17 13:49:31 -05:00
Aaron Hill
08d3fbc76b
Support unwinding after a panic
...
Fixes #658
This commit adds support for unwinding after a panic. It requires a
companion rustc PR to be merged, in order for the necessary hooks to
work properly.
Currently implemented:
* Selecting between unwind/abort mode based on the rustc Session
* Properly popping off stack frames, unwinding back the caller
* Running 'unwind' blocks in Mir terminators
Not yet implemented:
* 'Abort' terminators
This PR was getting fairly large, so I decided to open it for review without
implementing 'Abort' terminator support. This could either be added on
to this PR, or merged separately.
2019-11-17 08:34:25 -05:00
Ralf Jung
82ef2bb0e2
rename miri-issue to issue-miri for grouping
2019-11-14 10:16:44 +01:00
Steven Gu
ca983f5f80
Implments intrinsics::copysignf32
and intrinsics::copysignf64
.
2019-11-13 17:41:09 +08:00
bors
9316d90315
Auto merge of #1040 - RalfJung:rustup, r=RalfJung
...
rustup
2019-11-08 17:49:38 +00:00
Ralf Jung
4c25cf0a87
fix into_iter usage
2019-11-08 12:43:26 +01:00
Ralf Jung
57dec5c791
also test Box<self> receiver
2019-11-07 09:17:40 +01:00
Ralf Jung
b7a8ce1be0
move blosure tests to closures file; test Box<dyn> a bit more
2019-11-07 09:14:23 +01:00
Ralf Jung
04c12952ca
centralize and expand dyn-trait (method receiver) tests
2019-11-07 09:05:11 +01:00
Ralf Jung
c77b282695
rename call_drop_ tests to drop_
2019-11-07 08:56:11 +01:00
Ralf Jung
8b1630cb3b
tweak and slightly extend box-box-trait test
2019-11-07 08:55:59 +01:00
Ralf Jung
f4fb330c67
test offset_from
2019-11-05 20:17:35 +01:00
Ralf Jung
99282efc86
add an interesting run-pass stacked borrows example
2019-11-05 11:05:02 +01:00
Ralf Jung
459aea8f52
test align_to example
2019-10-25 20:26:01 +02:00
Ralf Jung
2690f5948a
rustup: fix for write_bytes and new union rules
2019-10-22 10:13:11 +02:00
bors
d902a11575
Auto merge of #975 - christianpoveda:clock-shim, r=RalfJung
...
Add clock_gettime shim
r? @oli-obk
I think there is no way to do proper testing of this other than checking that miri does not crash when calling `clock_gettime`.
2019-10-15 07:36:42 +00:00
Christian Poveda
f9c768864a
Use places instead of ptrs to write packed immtys
2019-10-14 16:00:40 -05:00
Christian Poveda
f425f445d1
Check that fs errors have the proper kind
2019-10-14 07:24:52 -05:00
Ralf Jung
9082092a71
use temp_dir for FS test
2019-10-11 23:02:04 +02:00
Christian Poveda
aa3e9703d1
Add clock_gettime shim
2019-10-11 11:36:33 -05:00
bors
6a2776e465
Auto merge of #983 - christianpoveda:fs-shims-tweaks, r=RalfJung
...
Various fixes to the file related shims
Hi @RalfJung, I'll be working incrementally over your comments for the new `fs` shims module here.
2019-10-11 13:37:05 +00:00
Christian Poveda
67ea454647
Correct style of comments
2019-10-11 04:17:43 -05:00
Christian Poveda
e9138ab4d6
Rename file manipulation test to fs
2019-10-11 04:01:07 -05:00
Christian Poveda
ae9f4e1e63
Avoid using the tests folder for the file manipualtion test
2019-10-11 04:00:12 -05:00
Christian Poveda
8368d4f2b4
Add comments to explain the chdir test
2019-10-11 02:35:50 -05:00
Ralf Jung
62f08eb416
also test AcqRel fence
2019-10-09 10:29:08 +02:00
Christian Poveda
00792493ef
Add tests for non-existing files
2019-10-08 08:57:30 -05:00
Christian Poveda
ffc47de1b9
Add unlink shim to delete files
2019-10-08 08:50:58 -05:00
Nicolas
bd4a2996d1
Add test for atomic fences
2019-10-05 08:20:17 -03:00
Christian Poveda
6c36a8c949
Return earlier when reading/writing 0 bytes
2019-10-02 09:12:03 -05:00
Christian Poveda
f5022b19d3
Fix dangling pointer bug for zero-sized reads
2019-10-02 08:43:23 -05:00
Christian Poveda
cd495cb04f
Add file writing capabilities
2019-10-01 11:10:37 -05:00
bors
1037f69bf6
Auto merge of #962 - christianpoveda:file-shim, r=oli-obk
...
Add shims for file handling
This adds the bare minimum to be able to do `File::open` and `File::read`. I also need some feedback about how to handle certain things
2019-10-01 15:33:09 +00:00
Christian Poveda
b540e5d24e
Reserve fides for stdio and fix merge issues
2019-09-30 10:54:51 -05:00
Ralf Jung
a9c207dce2
fix tests on 32bit
2019-09-29 12:26:13 -04:00
Ralf Jung
b5d449949a
comments and another test
2019-09-29 11:49:04 -04:00
Ralf Jung
9650b7868e
more align_offset tests
2019-09-29 11:43:50 -04:00
bors
b625812092
Auto merge of #957 - christianpoveda:ptr-align-offset, r=RalfJung
...
Fixes for align_offset
This addresses @RalfJung's comments in https://github.com/rust-lang/miri/pull/945
2019-09-28 18:38:00 +00:00
Christian Poveda
bdaa90ceb2
Add FIXME to file reading test
2019-09-25 11:12:46 -05:00
Christian Poveda
79b1f91f45
First version of file handling
2019-09-25 01:17:18 -05:00
Christian Poveda
0eed5e64de
Add chdir
shim
2019-09-24 15:50:00 -05:00
bors
2e17933eed
Auto merge of #958 - christianpoveda:getcwd-shim, r=oli-obk
...
Add getcwd shim
2019-09-24 16:22:21 +00:00
Christian Poveda
e2c54e64d1
Ignore integers
2019-09-22 21:39:17 -05:00
Ralf Jung
0ab0e40e1b
add another test case
2019-09-20 08:53:35 +02:00
Ralf Jung
d53d7f77a0
err on all-but-B, not just on C
2019-09-20 08:53:35 +02:00
Ralf Jung
7e65c44714
test for niche enum discriminant computation that overflows
2019-09-20 08:53:35 +02:00
Christian Poveda
133c2b39db
Only use getcwd without isolation
2019-09-19 10:32:18 -05:00
Christian Poveda
6593563e46
Check that getcwd does not error
2019-09-18 20:01:09 -05:00
Christian Poveda
497de53825
Update align_offset tests
2019-09-17 11:47:36 -05:00
Christian Poveda
fa20338c9a
Use str::from_utf8 instead
2019-09-12 09:36:31 -05:00
Christian Poveda
ed70617b9c
Add test for u8 align_offset
2019-09-11 12:08:42 -05:00
Ralf Jung
f5c35a2584
fix async test
2019-09-11 17:13:32 +02:00
Christian Poveda
f4a25e530a
Add env exclusion test
2019-08-28 17:57:41 -05:00
Ralf Jung
55efee9140
test host randomness access
2019-08-23 23:30:23 +02:00
Ralf Jung
97f9fb1284
change flag name: enable-communication -> disable-isolation
2019-08-23 23:29:11 +02:00
Ralf Jung
1be4e2ff58
bump Rust
2019-08-21 09:07:27 +02:00
Ralf Jung
a76bc3fb87
test arrray try_from (interesting const generic usage)
2019-08-20 16:11:03 +02:00
Ralf Jung
be4108e27c
test some new uninit APIs
2019-08-18 11:34:09 +02:00
Ralf Jung
60a0688185
adjust tests for eager pointer checks on deref
2019-08-15 11:01:03 +02:00
bors
1f504ea7be
Auto merge of #894 - christianpoveda:env-vars-communication, r=RalfJung
...
Enable env communication
related issue: https://github.com/rust-lang/miri/issues/800 . r? @RalfJung
2019-08-14 18:58:06 +00:00
Christian Poveda
f451fe21bd
Test env isolation
2019-08-13 16:17:53 -05:00
bors
a5eb61a4ad
Auto merge of #902 - RalfJung:ldexp, r=RalfJung
...
use apfloat for ldexp
2019-08-10 09:34:31 +00:00
Ralf Jung
33eb5657d6
ldexp: test overflow behavior
2019-08-10 11:31:20 +02:00
Ralf Jung
abcd244927
add async fn with partial initialization
2019-08-09 11:01:42 +02:00
Ralf Jung
fc06cb71bf
simplify async-fn tests
2019-08-09 11:01:42 +02:00
Ralf Jung
d5294a5bf3
test generator that yields during initialization of struct with uninhabited field
2019-08-09 11:01:42 +02:00
bors
1766d1b84b
Auto merge of #896 - tmandry:add-generator-uninhabited-test, r=RalfJung
...
Add generator, async tests with uninhabited saved local
See discussion in https://github.com/rust-lang/rust/pull/63035 .
2019-08-09 08:20:00 +00:00
Tyler Mandry
f544721de4
Add generator, async tests with uninhabited saved local
2019-08-07 16:56:35 -07:00
Christian Poveda
af623dede2
Add env var test variable in compiletest
2019-08-07 09:09:13 -05:00
Christian Poveda
b731a6a15f
Add support for env communication
2019-08-06 17:40:07 -05:00
bors
93e110f370
Auto merge of #886 - Aaron1011:shim/getrandom, r=RalfJung
...
Shim 'libc::getrandom' in addition to 'libc::syscall(libc::SYS_getrandom)'
2019-08-04 21:02:08 +00:00
Aaron Hill
a208f2fccf
Improve formatting
...
Co-Authored-By: Ralf Jung <post@ralfj.de>
2019-08-04 16:44:32 -04:00
Aaron Hill
66d10c877d
Ignore other platforms instead of using only-linux
2019-08-04 16:40:30 -04:00
Aaron Hill
8a75817707
Fix identation
2019-08-04 16:30:33 -04:00
Aaron Hill
a74a04f356
Test 'libc::getrandom' as well
2019-08-04 16:12:25 -04:00
Aaron Hill
6b087d2536
Add test
2019-08-04 16:12:24 -04:00
Aaron Hill
4c11c6b737
Add test for f32::round and f64::round
2019-08-04 15:57:00 -04:00
Ralf Jung
702f63e427
test AtomicU64
2019-08-04 10:30:42 +02:00
Ralf Jung
ca4969d4da
consolidate atomic tests
2019-08-04 10:30:42 +02:00
Christian Poveda
ff2001040f
Add shim for ldexp
2019-08-02 15:46:28 -05:00
Ralf Jung
3318657eaf
test Ref/RefMut protector interactions
2019-08-02 08:15:52 +02:00
Yuki Okushi
af7570fced
Remove await_macro
2019-07-31 16:42:38 +09:00
Ralf Jung
87f20fede5
adjust for slice pattern changes
2019-07-29 10:21:59 +02:00
Ralf Jung
8bec925e04
bump Rust
2019-07-26 10:14:44 +02:00
Ralf Jung
758d88bbf9
explain better what is non-deterministic here
2019-07-24 08:57:05 +02:00
Ralf Jung
85be8ab8eb
fix non-deterministic test
2019-07-23 23:48:28 +02:00
Ralf Jung
3c1ab78196
review failing compile-fail tests
2019-07-23 23:25:06 +02:00
Ralf Jung
c094d42504
update miri-seed handling for run-pass test suite
2019-07-23 21:53:47 +02:00
Ralf Jung
f1b623c313
test some const-generic-using methods
2019-07-13 10:25:04 +02:00
Ralf Jung
70a5bb7dbb
force pointers before reborrowing; fixes cargo miri test suite
2019-07-10 14:36:56 +02:00
Ralf Jung
a6f9bbc9e2
now we can also enable the ptr_int_cast test again
2019-07-10 14:36:56 +02:00
Ralf Jung
dd6cf30f60
ptr_offset works fine with intptrcast now
2019-07-10 14:36:56 +02:00
Ralf Jung
ba8728cd8b
fix test using mem::uninitialized
2019-07-06 09:33:22 +02:00
Ralf Jung
029a29407a
dangling-ptr-to-int should work now; move to noseed
2019-07-05 23:54:18 +02:00
Ralf Jung
f23b782101
align small malloc-allocations even less, and test that we do
2019-07-05 23:48:48 +02:00
Ralf Jung
802dcb7f89
temporarily disable ptr_offset, maybe that helps
2019-07-05 00:06:41 +02:00
Ralf Jung
8ec25066e7
make a test noseed for now that does not work with intptrcast yet
2019-07-03 10:47:28 +02:00
Ralf Jung
eb4128fb42
don't call Stacked Borrows hooks at all when validation is disabled
2019-07-03 10:47:28 +02:00
Ralf Jung
44298d86f0
dont add the -Zmiri-seed flag twice
2019-07-03 10:47:25 +02:00
Ralf Jung
ccbc035f6a
run all run-pass tests with intrptrcast. makes many of them fail!
2019-07-02 22:20:37 +02:00
Ralf Jung
8d8481fed5
fix outdated test name: overalign -> align
2019-07-02 13:02:48 +02:00
bors
2a4c4ade30
Auto merge of #809 - RalfJung:intptrcast, r=RalfJung
...
use intptrcast for heap_allocator test; then it should work on Windows
2019-06-30 21:19:56 +00:00
Ralf Jung
cb6d4f0c9a
test even more size-alignment combinations. found a bug in libstd!
2019-06-30 21:23:48 +02:00
Ralf Jung
709b474859
fix minimal alignment for system allocation functions
2019-06-30 21:10:47 +02:00
Ralf Jung
78261b788d
fix setting rustc flags
2019-06-30 19:10:09 +02:00
bors
72b2e1045d
Auto merge of #806 - varkor:patch-1, r=RalfJung
...
Fix `unused_must_use` inside `Box`
After https://github.com/rust-lang/rust/pull/62228 , this will be linted against (and causes the test to fail). (This blocks https://github.com/rust-lang/rust/pull/62228 .)
2019-06-30 15:07:03 +00:00
Ralf Jung
0ea4b50025
Miri is not deterministic any more
2019-06-30 17:02:20 +02:00
Ralf Jung
b067313552
use intptrcast for heap_allocator test; then it should work on Windows
2019-06-30 16:56:16 +02:00
Ralf Jung
e44d38e051
improve comment
2019-06-30 16:45:41 +02:00
Ralf Jung
db6283b884
better name for a test: threads -> sync
2019-06-30 16:44:25 +02:00
varkor
5d4aae8c05
Fix unused_must_use
inside Box
...
After https://github.com/rust-lang/rust/pull/62228 , this will be linted against (and causes the test to fail).
2019-06-30 15:31:14 +01:00
Ralf Jung
11457a4ad9
fix comparing function pointers with intptrcast
2019-06-30 11:21:31 +02:00
Ralf Jung
afe42625e5
test pointer string formatting
2019-06-28 20:42:00 +02:00
Christian Poveda
7fbf8e53a2
Fix alignment of base addresses
2019-06-26 09:08:28 -05:00
Christian Poveda
792d665a1f
Fix merge conflicts
2019-06-25 00:57:33 -05:00
Ralf Jung
4dc188a60e
adjust for refactored memory pointer checks
2019-06-23 20:19:26 +02:00
Christian Poveda
dd732e5862
Force intptrcast for binary operations
2019-06-22 09:25:16 -05:00
Ralf Jung
04fa38dd1b
allow some inequality comparisons between pointers and integers
2019-06-20 16:38:55 +02:00
Ralf Jung
7ce36226e6
implement and test unchecked_{add,sub,mul} intrinsics
2019-06-16 11:10:33 +02:00
Kenny Goodin
46b6a3fb7f
Add more missing math functions
...
Add missing functions for atan2, cosh, sinh, and tan.
Also add f32 calls and tests for cbrt and hypot.
2019-06-13 22:28:22 -04:00
Kenny Goodin
535914e3dc
Implement cbrt and hypot function calls
...
Test cases are added to `tests/run-pass/intrinsics-math.rs`
2019-06-12 15:44:30 -04:00
Ralf Jung
e2f114a5e0
test FMA a bit more
2019-06-11 19:41:43 +02:00
Ralf Jung
9c9a947bf4
test more enum-int-cast code paths
2019-06-11 19:41:43 +02:00
Ralf Jung
5e07ac335f
implement min and max floating point intrinsics
2019-06-11 19:41:43 +02:00
Dylan MacKenzie
1ceb81b345
Use in-core implementation of type_name
.
...
We bump `rust-version` to pick up the new impl from
https://github.com/rust-lang/rust/pull/61498 and add a test.
2019-06-05 22:36:53 -07:00
Ralf Jung
27a66a1e42
test for no-validation-only failure
2019-06-04 13:21:04 +02:00
Ralf Jung
e03255d625
fix existing tests
...
fix thread-local example to no longer write to pointers derived from a shared ref;
fix compile-fail test
2019-06-02 22:16:02 +02:00
Ralf Jung
dafd2e7202
rustup for ... deprecation
2019-06-01 10:04:49 +02:00
Ralf Jung
c748323eb3
move fn_item/ptr tests to closures file
2019-05-30 11:01:22 +02:00
Ralf Jung
badbd57cee
update for rustc warning about missing dyn
2019-05-30 10:58:30 +02:00