Commit Graph

862 Commits

Author SHA1 Message Date
Oliver Schneider
41d59b117a Rustup to rustc 1.17.0-nightly (b1e31766d 2017-03-03) 2017-03-07 12:49:56 +01:00
Oliver Schneider
8405770b51 Rustup to rustc 1.17.0-nightly (be760566c 2017-02-28) 2017-03-02 13:11:33 +01:00
Oliver Schneider
8878a4030a rustup to rustc 1.17.0-nightly (60a0edc6c 2017-02-26) 2017-02-28 12:35:00 +01:00
Oliver Schneider
e2c5a6e64e
don't allocate for primvals 2017-02-24 11:04:13 +01:00
Oliver Schneider
de42764b52
drop zst fields of null pointer optimized structs and enums
fixes #25
2017-02-24 11:04:13 +01:00
Oliver Schneider
2282e6b582
represent single field structs as their single field 2017-02-24 11:04:13 +01:00
Oliver Schneider
1a697f9bba
move all code accessing vtable internals into the trait module
fixes #124
2017-02-24 11:04:13 +01:00
Oliver Schneider
51f209a61f
write_primval used to leak memory if the destination was ByRef
instead of duplicating all the code from `write_value`, we forward to it.
2017-02-24 10:41:15 +01:00
Oliver Schneider
529efc51e8
detect memory leaks 2017-02-24 10:41:15 +01:00
Oliver Schneider
25c3a4fb00
drop all temporary closure allocations 2017-02-24 10:41:15 +01:00
Oliver Schneider
35502fd47d rustup 2017-02-24 10:39:55 +01:00
Scott Olson
1af2c397bf Merge pull request #141 from oli-obk/bug1
fix a bug in drop code of structs with unsized fields
2017-02-23 18:06:12 -08:00
Oliver Schneider
545f70010c
rustup 2017-02-14 17:19:43 +01:00
Oliver Schneider
4730cdf825
fix a bug in drop code of structs with unsized fields 2017-02-14 14:26:47 +01:00
Oliver Schneider
d4da7c46dd
rustup 2017-02-14 10:19:19 +01:00
Oliver Schneider
ac71d6f345
don't duplicate field access logic, always go through lvalue_field 2017-02-14 10:19:19 +01:00
Oliver Schneider
a727ceb7e9
fast path for zsts 2017-02-14 10:19:18 +01:00
Scott Olson
eeae478e74 Remove stable feature flag. 2017-02-10 15:13:50 -08:00
Scott Olson
b755a91c21 Do drop glue for closures. 2017-02-10 14:54:14 -08:00
Scott Olson
f73f001ce5 Fix fabsf{32,64} intrinsics. 2017-02-10 14:53:56 -08:00
Scott Olson
0f714b72a0 Formatting. 2017-02-10 13:35:45 -08:00
Scott Olson
6ffd7005c1 Cache string and bytestring literal allocs. 2017-02-10 13:35:33 -08:00
Scott Olson
98d28b688c Merge pull request #139 from oli-obk/master
lvalue references into fields of ValPair locals
2017-02-10 22:29:54 +01:00
Oliver Schneider
35cf19f38a only print the index part 2017-02-10 22:15:30 +01:00
Oliver Schneider
523c1877d9 print local fields as _2.1 instead of _2 (field 1) 2017-02-10 21:59:29 +01:00
Scott Olson
55bfbf58a2 Resolve Drop impls to get the right substs.
Fixes #133.
2017-02-10 07:55:05 -08:00
Oliver Schneider
1e7481f96e remove a hack that is now useless 2017-02-10 16:26:59 +01:00
Oliver Schneider
0b86d30594 enable Lvalue::Local to refer to a ValPair field 2017-02-10 16:14:59 +01:00
Scott Olson
7f0b9460cb Merge pull request #138 from oli-obk/master
refactor lvalue field projection handling to prepare for fewer `force_allocation`s
2017-02-10 15:27:36 +01:00
Scott Olson
5a2cdc2689 Implement the fast float math intrinsics. 2017-02-10 05:58:34 -08:00
Oliver Schneider
31f3aabdd4 move some variables closer to their use site. 2017-02-10 14:50:24 +01:00
Oliver Schneider
2e185485b3
use the lvalue_field function more often to save needless force_allocations 2017-02-10 14:34:10 +01:00
Oliver Schneider
12826fb8a3
factor out lvalue field access into its own function 2017-02-10 14:34:10 +01:00
Oliver Schneider
680e649805
get rid of useless calls into eval_lvalue 2017-02-10 14:34:10 +01:00
Oliver Schneider
07e1e7b7e5
move base computation into each projection to allow optimizations and corner cases 2017-02-10 14:34:10 +01:00
Scott Olson
d971a63c4b Mark more errors as unsupported. 2017-02-10 05:27:02 -08:00
Scott Olson
459f898b91 Reformatting. 2017-02-10 03:28:17 -08:00
Scott Olson
68daab974d Move relevant code into "traits" module. 2017-02-10 03:23:04 -08:00
Scott Olson
d8d813c4ad Resolve associated constants.
Fixes #130.
2017-02-10 03:22:59 -08:00
Scott Olson
9e24893879 Rename "vtable" mod to "traits". 2017-02-10 03:07:28 -08:00
Oliver Schneider
333264c956 clarify comment on drop glue 2017-02-10 08:13:18 +01:00
Oliver Schneider
e58f750a49 refactor drop glue 2017-02-09 19:27:07 +01:00
Oliver Schneider
023ec3e395 add some comments for clarification 2017-02-09 19:15:40 +01:00
Oliver Schneider
c06251b0d2 double space 2017-02-09 19:08:24 +01:00
Oliver Schneider
d92085fd0e properly extract the inner type in a drop impl 2017-02-09 19:08:08 +01:00
Oliver Schneider
06a02187ba move drop code into its own file 2017-02-09 18:12:59 +01:00
Scott Olson
6e9e7af8e7 Fix comment. 2017-02-09 06:58:20 -08:00
Scott Olson
3b95bf93b1 Merge pull request #132 from oli-obk/master
we cannot panic, thus `panicking` always returns false
2017-02-09 15:37:23 +01:00
Scott Olson
14d7501ca4 Merge pull request #128 from oli-obk/align_thyself
fix size of dst in size_of_val intrinsic
2017-02-09 15:35:15 +01:00
Oliver Schneider
0f183dc866 we cannot panic, thus panicking always returns false 2017-02-09 15:07:50 +01:00
Oliver Schneider
e6006c35fb don't unnecessarily convert Align -> u64 -> Align 2017-02-09 13:00:30 +01:00
Oliver Schneider
0d3cee2db3 fix size of dst in size_of_val intrinsic 2017-02-09 11:15:56 +01:00
Scott Olson
bc5d9b6f8d Merge pull request #127 from oli-obk/print_panic
ignore `print!`, turn `panic!` into a EvalError
2017-02-09 11:14:47 +01:00
Oliver Schneider
250f66562c ignore print!, turn panic! into a EvalError 2017-02-09 10:34:23 +01:00
Scott Olson
2048679eed Merge pull request #126 from oli-obk/1>-1
1 > -1
2017-02-09 09:57:22 +01:00
Oliver Schneider
6aed897c70
1 > -1 2017-02-09 09:43:45 +01:00
Oliver Schneider
8030800b15 use pre-existing abi_align method instead of magic formula 2017-02-09 08:50:35 +01:00
Oliver Schneider
1844381ad0 compute the offset of dst fields by checking the vtable 2017-02-09 08:38:01 +01:00
Oliver Schneider
4beb774caa don't mark the zst allocation as static 2017-02-08 17:24:20 +01:00
Oliver Schneider
080d3e4355 properly prevent recursive statics from marking each other 2017-02-08 16:27:28 +01:00
Oliver Schneider
3db6ec3f11 prevent more deallocations of statics 2017-02-08 15:32:49 +01:00
Oliver Schneider
fbfd2d4bca re-add spaces before static kind 2017-02-08 09:17:48 +01:00
Oliver Schneider
98cda6cb07 freeze -> static 2017-02-07 20:28:54 +01:00
Oliver Schneider
fd3bbfde04
Merge remote-tracking branch 'origin/master' 2017-02-07 19:22:44 +01:00
Oliver Schneider
01ac19d358 fix static mut accidental dealloc or freeze 2017-02-07 19:20:16 +01:00
Scott Olson
63cd994409 Merge pull request #117 from oli-obk/master
fix some leftover u128 errors
2017-02-07 17:58:05 +01:00
Oliver Schneider
3c560f5941 fix some leftover u128 errors 2017-02-07 17:52:32 +01:00
Scott Olson
14f094f5a9 Merge pull request #116 from oli-obk/master
fix drop impls for clike enums
2017-02-07 17:43:41 +01:00
Oliver Schneider
18f4ca3c6b fix drop impls for clike enums 2017-02-07 17:41:30 +01:00
Scott Olson
52ae8eb794 Log global/promoted frame creation. 2017-02-07 07:02:45 -08:00
Scott Olson
9a7f76889a Update for changes in rustc. 2017-02-07 06:01:03 -08:00
Oliver Schneider
74d8c8a7f4 check the arg_count member of MIR instead of counting iterator length 2017-02-07 14:31:29 +01:00
Oliver Schneider
45df853da7 cleanup buggy closure dispatch code 2017-02-07 14:22:20 +01:00
Oliver Schneider
0377990dc6
fix turning function items into closure trait objects 2017-02-07 11:04:46 +01:00
Scott Olson
9f7ca351e0 Dump fn ptr ABIs. 2017-02-07 01:57:42 -08:00
Scott Olson
468dbe8eaa Don't print a span for call to main. 2017-02-07 01:30:16 -08:00
Scott Olson
23c47f1e77 Dump instrinsic and C ABI return values. 2017-02-07 01:03:40 -08:00
Scott Olson
a5b9a0cb78 Simplify logging output. 2017-02-07 00:45:22 -08:00
Scott Olson
0afcb0568e Clean up local var dumping. 2017-02-07 00:39:40 -08:00
Scott Olson
097db58f30 Print fn name and type in dump_allocs. 2017-02-06 12:48:10 -08:00
Scott Olson
b36d8085a7 Fix duplicate allocation printing. 2017-02-06 09:26:01 -08:00
Scott Olson
7acbf7ef74 Cleanup: EvalResult<'a, ()> becomes EvalResult<'a>. 2017-02-04 13:09:10 -08:00
Scott Olson
0451b74c62 Merge pull request #108 from oli-obk/packd
implement packed struct field access
2017-02-03 15:47:47 -08:00
Scott Olson
3fe45572c1 Merge pull request #110 from oli-obk/rename_map_hir
rustup
2017-02-03 15:22:02 -08:00
Scott Olson
2ba883ce98 Merge pull request #107 from canndrew/rename_map_hir
TyCtxt's map renamed to hir
2017-02-03 15:20:05 -08:00
Oliver Schneider
0e77dd9473 rustup 2017-02-03 15:47:23 +01:00
Oliver Schneider
74d1a9a26c more documentation of unintuitive packed struct solution 2017-01-31 10:59:38 +01:00
Oliver Schneider
c47c325252 remove duplicate alignment checks 2017-01-31 10:56:37 +01:00
Oliver Schneider
d3e9e51d67 fix accessing fields other than the first in packed structs 2017-01-31 10:51:19 +01:00
Oliver Schneider
148c6de507 fix some unaligned reads 2017-01-31 10:36:46 +01:00
Oliver Schneider
96607d4593 document our packed struct strategy 2017-01-31 10:36:27 +01:00
Oliver Schneider
5e34740ab6 implement packed struct field access 2017-01-30 09:44:52 +01:00
Scott Olson
b490a4077c Merge pull request #103 from oli-obk/tuples
allow using tuple variant names as function handles
2017-01-29 03:27:29 -08:00
Andrew Cann
1752af689f TyCtxt's map renamed to hir 2017-01-29 15:21:24 +08:00
Oliver Schneider
ce95ae5927 correctly implement pointers to enum variant constructors 2017-01-28 15:46:46 +01:00
Oliver Schneider
b6e79dbbf5 fix some ICEs 2017-01-28 15:28:24 +01:00
Oliver Schneider
8f7e492305 drive-by rust update 2017-01-28 15:27:20 +01:00
Oliver Schneider
17090b8524
add tests for cargo miri and run them on travis 2017-01-28 11:57:53 +01:00
Oliver Schneider
2cca377bd4
add cargo miri test sub sub command 2017-01-28 11:57:53 +01:00
Oliver Schneider
5adb84645f
add cargo-miri subcommand to directly interpret the main binary of a crate 2017-01-28 11:57:52 +01:00
Oliver Schneider
e22cceaceb
allow using tuple variant names as function handles in presence of NonZero optimizations 2017-01-23 12:56:40 +01:00
Oliver Schneider
04eadedb28
allow using tuple variant names as function handles 2017-01-23 12:56:40 +01:00
Scott Olson
684f757139 Make clippy-suggested fixes. 2017-01-22 00:19:35 -08:00
Scott Olson
53fa985fc4 Update for changes in rustc. 2017-01-16 19:37:53 -08:00
Scott Olson
ac2bf50f9d Use the new field init shorthand. 2017-01-16 18:45:30 -08:00
Oliver Schneider
1838ef6bda
rustup to 2017-01-12 2017-01-13 17:16:19 +01:00
Oliver Schneider
e7ef118138
fix copy pasted code 2017-01-12 12:43:37 +01:00
Oliver Schneider
927844ab24
priroda required functions 2017-01-12 12:43:37 +01:00
Oliver Schneider
8084d60f54
add test for unions and remove needles forced alloc 2017-01-12 12:43:37 +01:00
Oliver Schneider
374232c832
add memrchr libc function 2017-01-12 12:43:37 +01:00
Oliver Schneider
24870428a7
more intrinsics 2017-01-12 12:43:37 +01:00
Oliver Schneider
0595f95460
remove old comment 2017-01-12 11:27:04 +01:00
Oliver Schneider
a58170a4c6
prevent intrinsics from creating uninhabited types 2017-01-12 10:37:14 +01:00
Oliver Schneider
b5f824fd9c
fix ICE when transmuting inhabited types to uninhabited 2017-01-12 09:59:00 +01:00
Oliver Schneider
753dbcf158
add a test for dereferencing a pointer to a ! 2017-01-12 09:41:36 +01:00
Oliver Schneider
7c486416cb
allow the use of tuple struct constructors as functions 2017-01-12 08:52:22 +01:00
Oliver Schneider
32cd8efb97
re-enable auxiliary tests for the host only 2017-01-12 08:40:16 +01:00
Oliver Schneider
3a658e09e8
rustup (i128) 2017-01-12 08:28:42 +01:00
Scott Olson
6d1c47b6ef Update for changes in rustc. 2016-12-21 17:23:28 -08:00
Scott Olson
9093188a5c Clean up useless pub use. 2016-12-21 17:15:03 -08:00
Scott Olson
2a5029ed6d Update MIR passes to match rustc. 2016-12-18 23:31:23 -08:00
Scott Olson
b233ada529 Change Option<Value> to Value, using ByVal(Undef).
This job isn't quite finished because it caused me to discover bugs
related to reading `ByVal(Undef)` when a `ByValPair` is expected, e.g.
for a fat pointer. This wasn't a problem with the `None` of
`Option<Value>`, but I realized an equivalent bug existed even then,
since you could transmute a `u64` like `ByVal(Bytes(42))` to a fat
pointer type on 32-bit targets.

Likewise, you could transmute a fat pointer to `u64` and get panics
related to expecting `ByVal` but finding `ByValPair`, so the problem
goes both ways.
2016-12-18 20:59:01 -08:00
Scott Olson
459a27d6bd Reading undef local/globals gets PrimVal::Undef.
This fixes #95.
2016-12-17 03:36:22 -08:00
Scott Olson
6b7c68bec2 Rename bits to bytes for consistency. 2016-12-17 03:19:32 -08:00
Scott Olson
4fe41ad8d5 Refactor PrimVal::bits() out of existence. 2016-12-17 03:09:57 -08:00
Scott Olson
d63ab5f8c3 Refactor PrimVal::relocation out of existence. 2016-12-17 01:47:24 -08:00
Scott Olson
29e690fe14 Handle writing undefined PrimVals and mask properly. 2016-12-17 01:36:02 -08:00
Scott Olson
0591683b73 Stop before trans so I can test non-x86_64 targets.
I had problems when it tried to link outputs for targets other than my
host.

This re-breaks tests with auxiliary builds. I'm not sure what to do
about those right now.
2016-12-16 23:47:43 -08:00
Scott Olson
3bad50e114 Rename PrimVal::from_{u,}int to from_{u,i}64. 2016-12-16 22:11:44 -08:00
Scott Olson
f83c45e367 Turn invalid panics into Results and rename fns. 2016-12-16 22:08:40 -08:00
Scott Olson
33f97feafb Shorten PrimVal::Undefined to PrimVal::Undef. 2016-12-16 22:03:34 -08:00
Scott Olson
e615f671ce Remove potentially wrong PartialEq from PrimVal. 2016-12-16 22:03:34 -08:00
Scott Olson
67e1627a55 Rename PrimVal::Pointer to PrimVal::Ptr.
Also fill out the PrimVal doc comments.
2016-12-16 22:03:34 -08:00
Scott Olson
b36a83171b Turn PrimVal into an enum including Undefined.
This is step 1 of a refactoring to fix #95. The `Undefined` variant is
so far unused and the old `bits` and `relocation` fields are emulated
with two new temporary methods. There should be no functional change due
to this commit.
2016-12-16 22:03:34 -08:00
Scott Olson
6ec3d65068 Revert "Revert "rustup to rustc 1.15.0-dev (ace092f56 2016-12-13)"" 2016-12-16 17:10:16 -08:00
Scott Olson
0deabf9c00 Revert "rustup to rustc 1.15.0-dev (ace092f56 2016-12-13)" 2016-12-15 01:16:06 -08:00
Oliver Schneider
0a79304fcb
improve variable name 2016-12-15 09:58:57 +01:00
Oliver Schneider
fd0c21eeee
check that the null terminator is defined and not part of a pointer 2016-12-15 09:58:41 +01:00
Oliver Schneider
24203602e1
remove unused import 2016-12-15 09:56:40 +01:00
Oliver Schneider
9ec97bac71
enable auxiliary builds 2016-12-14 17:06:36 +01:00
Oliver Schneider
8b8c7430f1
re-use mir-opt compiletest instead of rolling our own 2016-12-14 17:06:36 +01:00
Oliver Schneider
69fa3ebff6
rustup to rustc 1.15.0-dev (ace092f56 2016-12-13) (always_encode_mir) 2016-12-14 17:06:23 +01:00
Scott Olson
ee0dc452aa Move binop functions to operator module. 2016-12-10 17:03:12 -08:00
Scott Olson
e0013b2ae4 Clean up vtable imports. 2016-12-10 16:58:13 -08:00
Scott Olson
636b476eda Rename intrinsics to intrinsic for consistency. 2016-12-10 16:27:45 -08:00
Scott Olson
1af63171f8 Split primval into operator and value. 2016-12-10 16:23:07 -08:00
Scott Olson
bc5bd71922 Add support for untagged unions. 2016-12-07 23:25:47 -08:00
Scott Olson
a64d30b2c1 Replace some stray try!s with ?. 2016-12-07 22:56:28 -08:00
Scott Olson
829d97bde2 Move lvalue-related methods to lvalue mod. 2016-12-07 22:01:11 -08:00
Scott Olson
5ce6514f23 Dump allocations within PrimVal pointers. 2016-12-07 22:00:46 -08:00
Scott Olson
fe19a014ff Move lvalue data structures out of eval_context. 2016-12-07 20:58:48 -08:00
Scott Olson
4702d97093 Flatten 'interpreter' mod tree into the root. 2016-12-07 20:30:37 -08:00
Oliver Schneider
5dd01c309f
fix documentation 2016-12-07 09:52:22 +01:00
Oliver Schneider
3065273601
simplify the interpreter locals, since they always must be backed by an allocation 2016-12-07 09:19:14 +01:00
Oliver Schneider
bfe1efcbf8
stop leaking memory on closure calls 2016-12-06 18:13:11 +01:00
Oliver Schneider
360ef490f4
supply a real "caller" span to drop calls 2016-12-06 16:16:22 +01:00
Oliver Schneider
c303ac001d
rustup 2016-12-06 15:41:28 +01:00
Scott Olson
b96202b3cd Update for changes in rustc. 2016-12-02 19:44:59 -08:00
Scott Olson
244ae8eac7 Introduce try_read_value to avoid allocations.
Attempt reading a primitive value out of any source lvalue and write
that into the destination without making an allocation if possible.
2016-11-28 20:22:21 -08:00
Scott Olson
e4910e437b Remove useless map. 2016-11-27 19:08:06 -08:00
Scott Olson
71cc1226c7 s/init/zero/ 2016-11-27 13:46:34 -08:00
Scott Olson
fd02285788 Remove unnecessary transmute_primval function. 2016-11-26 23:42:17 -08:00
Scott Olson
0929201d60 Remove useless binding. 2016-11-26 23:37:40 -08:00
Scott Olson
f7cd07a615 Produce PrimValKinds for small, simple layout ADTs. 2016-11-26 23:21:25 -08:00
Scott Olson
49f784a3e4 Remove PrimValKind field from PrimVal. 2016-11-26 23:21:20 -08:00
Scott Olson
16f3b590e4 Remove unnecessary qualification. 2016-11-26 19:18:39 -08:00
Scott Olson
78b29b360a Dump return value when returning. 2016-11-26 19:13:22 -08:00
Scott Olson
020f0b782b Refactor passing of resource limits. 2016-11-26 17:54:19 -08:00
Scott Olson
3f764a5cfd Update for changes in rustc and refactor. 2016-11-26 17:36:31 -08:00
Scott Olson
16fa75c6cf Merge pull request #88 from oli-obk/patch-1
don't freeze globals twice
2016-11-19 00:10:36 -08:00
Oliver Schneider
ca7ae5a3d0 don't freeze globals twice 2016-11-19 08:33:13 +01:00
Oliver Schneider
0039ebc940
replace most uses of usize with u64 so the host architecture isn't exposed anymore 2016-11-18 12:55:14 +01:00
Oliver Schneider
e361b63fa0
remove a TODO that has been fixed in the previous commit 2016-11-18 10:39:00 +01:00
Oliver Schneider
986b3a07c2
layout computation can fail, make it fail with a miri error 2016-11-18 10:38:07 +01:00
Oliver Schneider
26ccc1e4bc
add a step counter that can be changed during interpretation 2016-11-18 10:38:07 +01:00
Oliver Schneider
fd6a90860c
simplify dumping of pointers to the zst or never alloc 2016-11-18 10:36:01 +01:00
Oliver Schneider
11a0594a1d
address comments 2016-11-18 10:35:41 +01:00
Oliver Schneider
51ff9fdaf6
deallocate all locals on function exit and transitively freeze constants through pointers 2016-11-18 10:05:55 +01:00
Oliver Schneider
a5aafbdfbf
rustup 2016-11-17 11:31:28 +01:00
Oliver Schneider
fd68670c0a
merge closures and function and implement some closure vtable cases 2016-11-15 17:19:37 +01:00
Oliver Schneider
64155ffd10
implement fn item -> trait object conversion 2016-11-15 16:32:21 +01:00
Oliver Schneider
1c5c6cd078
allow zsts in the zero case of a nullable pointer optimized enum 2016-11-15 16:15:17 +01:00
Oliver Schneider
4748587a77
fix creation of simd types 2016-11-15 15:23:19 +01:00
Oliver Schneider
1549c2d51e
erase all lifetimes from function types before creating pointers to them 2016-11-15 15:20:10 +01:00
Oliver Schneider
e2091ff934
add more atomic intrinsics 2016-11-15 15:19:38 +01:00
Oliver Schneider
f77a0ab10b
fix writing int->ptr transmuted primvals to memory 2016-11-15 15:18:49 +01:00
Oliver Schneider
14ff6411f0
make sure ByVal pointers act just like ByRef to a pointer 2016-11-15 14:12:49 +01:00
Oliver Schneider
4a39c228df
minor fixes
the FIXME was wrong here, there's no need for any special offsetting
2016-11-15 14:11:44 +01:00
Oliver Schneider
511fa40d23
add test for int -> fn ptr cast 2016-11-15 14:11:00 +01:00
Oliver 'ker' Schneider
2c34d6558c also address TyStr in the null pointer optimization 2016-11-13 21:56:57 +01:00
Oliver 'ker' Schneider
f71c31c0e8 cannot index into non-fat-pointers 2016-11-13 21:30:03 +01:00
Oliver 'ker' Schneider
75f56eb144 fix field indexing into fat pointers 2016-11-13 19:26:20 +01:00
Oliver 'ker' Schneider
d42a7d021d fix null optimizations for smaller than pointer enums
fixes #76
2016-11-11 13:10:47 +01:00
Oliver 'ker' Schneider
1c40fb0da1 report the bad integer size instead of just the fact that it is bad 2016-11-11 13:08:14 +01:00
Oliver 'ker' Schneider
b2d476eb38 type_size now returns None for unsized types 2016-11-11 13:07:41 +01:00
Oliver 'ker' Schneider
921f5af1fe ensure that integers cast to pointers will never point at a valid alloc, not even the zst alloc 2016-11-10 19:20:11 +01:00
Scott Olson
2d4301ea7e Simplify cast_ptr. 2016-11-06 22:30:56 -08:00
Scott Olson
a8d90ff12e Update for changes in rustc. 2016-11-06 22:25:54 -08:00
Scott Olson
33b1676bda Merge pull request #75 from oli-obk/master
implement more drop stuff
2016-11-06 01:29:14 -08:00
Oliver Schneider
9c85e203c5 remove leftover match 2016-11-05 17:09:37 +01:00