Ralf Jung
|
c6e747e14c
|
Merge remote-tracking branch 'origin/master' into str-index-mut
|
2019-02-14 08:33:37 +01:00 |
|
Ralf Jung
|
8466f78e83
|
ignore overaligned tests on Windows (because, of course, Windows' API is broken here)
|
2019-02-13 19:48:26 +01:00 |
|
Ralf Jung
|
2d323857e9
|
implement and test posix_memalign
|
2019-02-13 17:47:54 +01:00 |
|
Ralf Jung
|
d91ab9a7a6
|
fix ptr comparison test
|
2019-02-13 10:07:31 +01:00 |
|
Ralf Jung
|
604095fff2
|
Merge branch 'master' into format-padding
|
2019-02-13 08:12:11 +01:00 |
|
Ralf Jung
|
3c652032c0
|
be more clear which stack we are talking about
|
2019-02-12 10:51:03 +01:00 |
|
Ralf Jung
|
0802b3a108
|
implement passing arguments to the interpreted program
|
2019-02-09 20:00:40 +01:00 |
|
Ralf Jung
|
7827924bfc
|
test padding in format strings
|
2019-02-09 15:52:59 +01:00 |
|
Ralf Jung
|
0f6e82db36
|
fix (un)likely intrinsics
|
2019-02-09 13:08:23 +01:00 |
|
Ralf Jung
|
e5972c38a3
|
test mutable string slice indexing
|
2019-02-06 11:47:32 +01:00 |
|
Ralf Jung
|
48ac35f072
|
panic_impl is another way to panic
|
2019-02-06 11:41:45 +01:00 |
|
Ralf Jung
|
6b855573bd
|
fix generator test case
|
2019-01-30 11:51:06 +01:00 |
|
Ralf Jung
|
f7519f36e6
|
fix tests to avoid deprecated constants
|
2019-01-28 09:19:56 +01:00 |
|
Ralf Jung
|
b344f0fd43
|
test some more 2PB stuff
|
2019-01-04 10:15:53 +01:00 |
|
Ralf Jung
|
3715245a36
|
add test for offseting fn ptr
|
2018-12-26 16:23:04 +01:00 |
|
Ralf Jung
|
5a8f9e58f7
|
properly compare unequal function pointers
|
2018-12-25 13:29:38 +01:00 |
|
Ralf Jung
|
4e4569cf4b
|
fix build and tests with latest nightly
|
2018-12-25 13:26:40 +01:00 |
|
Ralf Jung
|
79bdec8a9c
|
fix test for latest nightly
|
2018-12-22 16:07:50 +01:00 |
|
Ralf Jung
|
a03d184648
|
Merge branch 'master' into rustup
|
2018-12-20 13:34:24 +01:00 |
|
Ralf Jung
|
51ed485ba4
|
implement stdout/stderr on Windows
|
2018-12-19 12:16:07 +01:00 |
|
Ralf Jung
|
b3f7991367
|
btree is fixed
|
2018-12-18 18:41:52 +01:00 |
|
Oliver Scherer
|
77ef84e1e8
|
Adjust tests for funciton pointer changes
|
2018-12-17 10:12:04 +01:00 |
|
Ralf Jung
|
e2505dd945
|
we have no whitelist any more, go back to opt-level 3
|
2018-12-13 22:07:57 +01:00 |
|
Ralf Jung
|
b0581caeef
|
VecDeque got fixed
|
2018-12-13 22:05:46 +01:00 |
|
Ralf Jung
|
8bd1f78563
|
fix libc feature gate
|
2018-12-13 20:25:24 +01:00 |
|
Ralf Jung
|
5ff67363cb
|
fix warning
|
2018-12-12 19:51:52 +01:00 |
|
Ralf Jung
|
7e9098ff69
|
treat ref-to-raw cast like a reborrow: do a special kind of retag
|
2018-12-12 11:11:20 +01:00 |
|
Ralf Jung
|
8ec371747a
|
do not auto-detect the targets in the sysroot, instead specify target manually through env var
|
2018-12-12 11:03:42 +01:00 |
|
Ralf Jung
|
5689366a0d
|
use rustc_version also to parse host in compiletest
|
2018-12-10 13:20:04 +01:00 |
|
Ralf Jung
|
f044205b5f
|
the test suite assumes a libstd with full MIR; run test suite on xargo-built foreign libstds
|
2018-12-10 10:04:55 +01:00 |
|
Ralf Jung
|
228663248c
|
Merge remote-tracking branch 'origin/master' into rustup
|
2018-12-08 10:33:14 +01:00 |
|
Ralf Jung
|
d5d1b1e4f3
|
add FIXME test for coercing &mut to *const
|
2018-12-07 18:01:59 +01:00 |
|
Ralf Jung
|
bbdc3380d5
|
fix tests
|
2018-12-07 10:15:25 +01:00 |
|
Ralf Jung
|
1a41ce6319
|
Merge remote-tracking branch 'origin/master' into stacked-borrows-2-phase
|
2018-12-07 09:03:15 +01:00 |
|
Ralf Jung
|
61f20761d3
|
Merge branch 'master' into stacked-borrows-2-phase
|
2018-12-03 11:11:32 +01:00 |
|
Ralf Jung
|
0cb3bf7912
|
Merge branch 'master' into fixme
|
2018-12-03 10:52:59 +01:00 |
|
Ralf Jung
|
b6e5822601
|
add FIXME
|
2018-12-03 10:28:32 +01:00 |
|
Oliver S̶c̶h̶n̶e̶i̶d̶e̶r Scherer
|
e73d0a3bca
|
Merge branch 'master' into fixme
|
2018-12-03 09:38:32 +01:00 |
|
Ralf Jung
|
9d0c1dd676
|
disable VecDeque test until the fix lands in rustc
|
2018-12-03 09:15:18 +01:00 |
|
Ralf Jung
|
0e44876a2d
|
fix mutability gap: do not allow shared mutation when creating frozen reference
|
2018-12-03 09:15:18 +01:00 |
|
Ralf Jung
|
479eb3bd2b
|
support for basic (non-overlapping) 2-phase borrows
|
2018-12-02 13:30:09 +01:00 |
|
Wim Looman
|
91f0b28ecc
|
Skip testing targets that don't ship libstd
|
2018-12-02 12:47:15 +01:00 |
|
Ralf Jung
|
36a2b89522
|
remove a whole lot of unnecessary attributes
|
2018-12-02 11:26:09 +01:00 |
|
Ralf Jung
|
429d84f068
|
remove/fix outdated FIXMEs in tests
|
2018-12-02 11:14:24 +01:00 |
|
Ralf Jung
|
42e73b5536
|
async fn got fixed
|
2018-11-29 17:29:00 +01:00 |
|
Ralf Jung
|
fb72348e5f
|
disable async-fn, for now
|
2018-11-28 19:06:12 +01:00 |
|
Ralf Jung
|
97e010f5b9
|
barriers prevent deallocation
|
2018-11-27 14:26:23 +01:00 |
|
Ralf Jung
|
194710e112
|
no barriers for boxes
|
2018-11-27 14:26:23 +01:00 |
|
Ralf Jung
|
58309956c1
|
for now, we allow Undef in raw pointers as we do in integers
|
2018-11-27 14:26:23 +01:00 |
|
Ralf Jung
|
dd94930ee3
|
implement function barriers
|
2018-11-27 14:26:23 +01:00 |
|
Ralf Jung
|
7d623f73cc
|
do not use 'let _', it is strange
|
2018-11-26 15:31:53 +01:00 |
|
Ralf Jung
|
1edba2337b
|
Merge branch 'master' into self-referential-generator
|
2018-11-26 09:47:22 +01:00 |
|
Ralf Jung
|
094d07c114
|
Merge remote-tracking branch 'origin/master' into rustup
|
2018-11-22 08:21:05 +01:00 |
|
Ralf Jung
|
6eb153aca2
|
Merge branch 'master' into partially-invalidate-mut
|
2018-11-21 16:53:19 +01:00 |
|
Ralf Jung
|
04794c4c2a
|
test that we support partial invalidation of mutable references
|
2018-11-21 16:08:46 +01:00 |
|
Ralf Jung
|
ec8cc029c1
|
on a deref, check that we are not using a mutable ref with a frozen tag
|
2018-11-21 15:44:47 +01:00 |
|
Ralf Jung
|
984c3368a9
|
remove stabilized feature flag
|
2018-11-21 13:41:57 +01:00 |
|
Ralf Jung
|
0b7625a079
|
make sure compile-fail tests would compile if we screw up
|
2018-11-21 10:19:00 +01:00 |
|
Ralf Jung
|
7fe24a2b86
|
also add an async fn test
|
2018-11-20 16:09:06 +01:00 |
|
Ralf Jung
|
8d6472a76c
|
test self-referential generator
|
2018-11-20 15:07:09 +01:00 |
|
Ralf Jung
|
22f11b8eec
|
make tests compatible with 2018 edition
|
2018-11-20 14:15:14 +01:00 |
|
Ralf Jung
|
1ae536b03e
|
use 2018 edition for tests
|
2018-11-20 12:41:34 +01:00 |
|
Ralf Jung
|
5b095e1652
|
stdout not implemented on windows
|
2018-11-20 09:12:29 +01:00 |
|
Ralf Jung
|
6085865975
|
adjust for InboundsCheck parameter of memory bounds check
|
2018-11-20 08:45:25 +01:00 |
|
Ralf Jung
|
a806805f23
|
add an interesting testcase
|
2018-11-19 10:26:40 +01:00 |
|
Ralf Jung
|
880229d4c3
|
escape-on-cast, now ptr-deref does not change the tag at all, ever
|
2018-11-17 10:05:40 +01:00 |
|
Ralf Jung
|
b7dbb5e2a7
|
also consider boxes like unique references
|
2018-11-17 10:05:40 +01:00 |
|
Ralf Jung
|
c54dcf59ae
|
add some tests for retagging inside tuples and options
|
2018-11-16 11:13:55 +01:00 |
|
Ralf Jung
|
a1f895d6f2
|
retagging: descent into values, type-driven
|
2018-11-16 11:09:33 +01:00 |
|
Ralf Jung
|
827e5180f2
|
stacked borrows is broken without full MIR
|
2018-11-16 10:01:54 +01:00 |
|
Ralf Jung
|
c93f6d6bb0
|
Merge remote-tracking branch 'origin/master' into escape-to-raw
|
2018-11-16 09:41:47 +01:00 |
|
Ralf Jung
|
70738bf8cc
|
where there is 2, there should be 1
|
2018-11-16 08:53:43 +01:00 |
|
Ralf Jung
|
ca7b088aba
|
remove type system tests
|
2018-11-16 08:50:44 +01:00 |
|
Ralf Jung
|
ba8eb7608e
|
add an interesting demo for &mut being unique
|
2018-11-15 09:35:40 +01:00 |
|
Ralf Jung
|
a87e952102
|
Separate deref and access into different operations; add special exception for creating raw references
|
2018-11-15 09:35:40 +01:00 |
|
Ralf Jung
|
224d03dbdc
|
organize std tests a bit better
|
2018-11-15 09:35:40 +01:00 |
|
Ralf Jung
|
a94e197105
|
better test the special exception for reading through unique when things are shared
|
2018-11-15 09:35:40 +01:00 |
|
Ralf Jung
|
aa8f523df6
|
test for special things that are now possible
|
2018-11-15 09:35:40 +01:00 |
|
Ralf Jung
|
94e751267c
|
add another mean test case
|
2018-11-15 09:35:40 +01:00 |
|
Ralf Jung
|
09919c2b59
|
Retag is the only operation that generates new tags
|
2018-11-15 09:35:40 +01:00 |
|
Ralf Jung
|
f233dc0687
|
Rc should be fixed
|
2018-11-11 10:12:44 +01:00 |
|
Ralf Jung
|
54307cd888
|
bump compiletest so that we can share the tempdir() call
|
2018-11-09 14:04:22 +01:00 |
|
Ralf Jung
|
97302e86c2
|
remove unused import
|
2018-11-09 11:51:39 +01:00 |
|
Ralf Jung
|
45e14f8dc5
|
use custom test runner so that we can get proper test filtering
|
2018-11-09 11:50:34 +01:00 |
|
Ralf Jung
|
d694dc43f4
|
bump Rust version
|
2018-11-08 08:35:14 +01:00 |
|
Ralf Jung
|
74635a57e2
|
re-do large parts of stacked borrows, now with proper support for partiall frozen data
|
2018-11-08 08:29:34 +01:00 |
|
Ralf Jung
|
a05ba90300
|
disable Rc test for now, it ain't working
|
2018-11-07 14:24:11 +01:00 |
|
Ralf Jung
|
efd2f0e0e4
|
move new test to correct dir
|
2018-11-03 12:33:14 +01:00 |
|
Ralf Jung
|
e68687b840
|
test that we check the layout constraints as early as we can
|
2018-11-03 12:25:57 +01:00 |
|
Ralf Jung
|
5f42aa61d5
|
illegal_write2 does not work with optimizations
|
2018-11-03 10:23:50 +01:00 |
|
Ralf Jung
|
81534496dc
|
rename RefKind to UsageKind, because it not only used for references now
|
2018-11-01 08:58:03 +01:00 |
|
Ralf Jung
|
3302656247
|
More extensive slice and vec tests
Not all of them pass validation...
|
2018-11-01 08:58:03 +01:00 |
|
Ralf Jung
|
430e047a6f
|
start collecting some things ALLOWED by stacked borrows in a run-pass test
|
2018-11-01 08:58:03 +01:00 |
|
Ralf Jung
|
85f821d7e9
|
unify checks on memory access and reborrowing, and update for Machine trait change
|
2018-11-01 08:58:03 +01:00 |
|
Ralf Jung
|
bba3c49e84
|
basic retagging (no fn_entry); this also makes us catch more bugs even with optimizations and we can finally stop mutating the state on deref
|
2018-11-01 08:58:03 +01:00 |
|
Ralf Jung
|
7ac0e79ad5
|
stub Retag hook; fix tests for removal of -Zmir-emit-validate
|
2018-11-01 08:58:03 +01:00 |
|
Ralf Jung
|
40b7502613
|
Reject atomic arithmetic on non-integer types
Fixes #181
|
2018-10-31 11:04:35 +01:00 |
|
Ralf Jung
|
1fa0ff88c0
|
fix nits
|
2018-10-30 10:41:01 +01:00 |
|
Ralf Jung
|
6cbe280094
|
Merge remote-tracking branch 'origin/master' into rustup
|
2018-10-30 09:40:18 +01:00 |
|
Ralf Jung
|
a48b2cc4e9
|
disable validation for some tests that need further investigation
|
2018-10-30 09:40:01 +01:00 |
|
Ralf Jung
|
cba30e8e8b
|
opt level 3 works again :)
|
2018-10-29 11:51:22 +01:00 |
|
Ralf Jung
|
356369dd08
|
test against passing invalid shared refs around
|
2018-10-23 16:01:22 +02:00 |
|
Ralf Jung
|
5388037f8a
|
remove code duplication by letting reactivatable() compute what reactivate() has to do
|
2018-10-23 15:59:50 +02:00 |
|
Ralf Jung
|
fe83ef323c
|
also run compile-fail tests with and without optimizations
|
2018-10-23 13:09:17 +02:00 |
|
Ralf Jung
|
cc328f6374
|
test passing invalid refs around
|
2018-10-23 11:20:04 +02:00 |
|
Ralf Jung
|
8cd73e534f
|
use as(_mut)_ptr on slices to entirely escape them to raw
|
2018-10-22 18:51:06 +02:00 |
|
Ralf Jung
|
44b3c38b44
|
make sure raw ptrs only have to be valid as far as they are used
|
2018-10-22 18:34:48 +02:00 |
|
Ralf Jung
|
26bb4f79dc
|
get rid of implicit Raw at bottom of stack; locals get a uniq at their bottom
|
2018-10-22 18:17:37 +02:00 |
|
Ralf Jung
|
fda03e9d7d
|
some more compile-fail tests
|
2018-10-22 16:48:10 +02:00 |
|
Ralf Jung
|
dd1558f337
|
rustc update and be very selective about what we accept on a deref
|
2018-10-22 16:48:09 +02:00 |
|
Ralf Jung
|
0b22a1c9d9
|
env vars should work on macOS
|
2018-10-22 09:04:32 +02:00 |
|
Ralf Jung
|
fdb3022a11
|
env vars are only available with full MIR
|
2018-10-22 08:41:48 +02:00 |
|
Ralf Jung
|
957d18c343
|
Merge remote-tracking branch 'origin/master' into rustup
|
2018-10-22 08:41:01 +02:00 |
|
Ralf Jung
|
bbb1d80703
|
disable env var test on macOS, win
|
2018-10-21 01:31:46 +02:00 |
|
Ralf Jung
|
8134918390
|
don't use NOTE in tests
|
2018-10-19 12:29:49 +02:00 |
|
Ralf Jung
|
0b6e349417
|
automalically use start-fn if we have all the MIR
|
2018-10-19 10:07:17 +02:00 |
|
Ralf Jung
|
b9fe91e486
|
fix for ptr-to-raw casts properly erasing the tag
|
2018-10-18 12:04:41 +02:00 |
|
Ralf Jung
|
1907782b64
|
reenable some tests that work now, and organize them better with directories
|
2018-10-17 16:58:54 +02:00 |
|
Ralf Jung
|
d4b78b36ab
|
stacked borrows: enforcement at memory accesses
|
2018-10-17 15:15:53 +02:00 |
|
Ralf Jung
|
348f782085
|
add env var emulation test, and fix it complaining about leaks
|
2018-10-16 18:35:27 +02:00 |
|
Ralf Jung
|
37de74f015
|
test with opt levels 0 and 1
|
2018-10-16 17:57:03 +02:00 |
|
Ralf Jung
|
c9cf0344ee
|
enable validation for compile-fail tests, and add some new ones
|
2018-10-12 10:54:37 +02:00 |
|
Ralf Jung
|
62b819ba18
|
whitelist std::ptr::read
|
2018-10-12 10:40:44 +02:00 |
|
Ralf Jung
|
26f9d617c3
|
do not validate start-fn code
|
2018-10-11 16:10:04 +02:00 |
|
Ralf Jung
|
e4dfb7013b
|
enable validation per default, but add a flag to disable it and use that for some run-pass tests
compile-fail does not do validation yet
|
2018-10-11 11:24:22 +02:00 |
|
Ralf Jung
|
a090edbc03
|
explain a test
|
2018-10-11 08:59:39 +02:00 |
|
Ralf Jung
|
a439262859
|
Merge branch 'master' into ptr-offset
|
2018-10-10 10:03:34 +02:00 |
|
Ralf Jung
|
233516b54d
|
Merge remote-tracking branch 'origin/master' into rustup
|
2018-10-10 09:07:26 +02:00 |
|
Ralf Jung
|
0641d5b6d3
|
0-offset is also not always okay
|
2018-10-09 20:13:46 +02:00 |
|
Ralf Jung
|
edf28fa227
|
only allow offset-by-0 on integer pointers
|
2018-10-09 20:13:46 +02:00 |
|
Ralf Jung
|
cc275c63a9
|
fix for fn allocations now having an alignment (1) and a size (0)
|
2018-10-08 13:35:54 +02:00 |
|
Ralf Jung
|
59eb3dbdae
|
use Box::into_raw
|
2018-10-07 10:35:34 +02:00 |
|
Ralf Jung
|
959693f1e5
|
ensure that we cannot use (wrapping_)offset to go from an int ptr to a real ptr
|
2018-10-06 18:32:39 +02:00 |
|
Ralf Jung
|
146f5d8d10
|
rustup; test for return type mismatch
|
2018-10-02 21:16:55 +02:00 |
|
Ralf Jung
|
e8f6973e2d
|
fix test for latest rustc
|
2018-09-29 19:39:34 +02:00 |
|
Ralf Jung
|
f18cb40e4c
|
test mutating a non-mut static with interior mutability
|
2018-09-23 09:14:55 +02:00 |
|
Ralf Jung
|
a85b78d30c
|
test for interestingly aligned field access
|
2018-09-22 08:45:24 +02:00 |
|
Ralf Jung
|
18d7394071
|
more compile-fail ptr equality tests, to rule out any non-determinism; and fix ptr equality to fail all of them.
At least these are the cases I can think of right now.
|
2018-09-17 10:02:31 +02:00 |
|
Ralf Jung
|
cd138bcd0b
|
test more operations on dangling ZST pointers
|
2018-09-17 10:02:31 +02:00 |
|
Ralf Jung
|
130d803b32
|
fix test for rustup
|
2018-09-17 09:18:57 +02:00 |
|
Ralf Jung
|
95d79cc11e
|
Merge remote-tracking branch 'origin/master' into zero-sized-accesses
|
2018-09-17 08:39:59 +02:00 |
|
Ralf Jung
|
95eb77c18e
|
add some compile-fail tests
|
2018-09-16 17:29:53 +02:00 |
|
Ralf Jung
|
1697b93ed9
|
Merge branch 'master' into rustup
|
2018-09-01 10:35:19 +02:00 |
|
Ralf Jung
|
f56841d974
|
unignore a bunch of tests that actually work
|
2018-08-30 15:57:17 +02:00 |
|
Ralf Jung
|
c44267960f
|
ptr equality: only defined for ptrs in the same allocation and live ptrs
|
2018-08-30 10:46:09 +02:00 |
|
Ralf Jung
|
e239fcffc1
|
new tests for new fn arg passing code
|
2018-08-30 10:42:18 +02:00 |
|
Ralf Jung
|
904923fa7a
|
move some more helpers to rustc
|
2018-08-30 10:42:18 +02:00 |
|
Ralf Jung
|
2a244dcb48
|
no TLS dtor and no leak checks on macOS
|
2018-08-30 09:41:57 +02:00 |
|
Ralf Jung
|
d1cd254003
|
no RwLock on Windows
|
2018-08-30 09:20:08 +02:00 |
|
Ralf Jung
|
0db1c6a1b0
|
ignore memory leaks on Windows
|
2018-08-30 08:57:33 +02:00 |
|