diff options
| author | Manish Goregaokar <manishsmail@gmail.com> | 2015-03-31 09:04:38 +0530 |
|---|---|---|
| committer | Manish Goregaokar <manishsmail@gmail.com> | 2015-03-31 09:04:38 +0530 |
| commit | b4457fb8a2157d7e9a983ba67e5554509017379d (patch) | |
| tree | 533961f62e1e4535b67fb7240930d7018f99bbfe /src/rustllvm/ExecutionEngineWrapper.cpp | |
| parent | 2c0329cfa8ff70365e3fc02a75e31ef82b2cdc75 (diff) | |
| parent | e4340531c2af4b39b5ee7c111fae4f6f27ac8bf7 (diff) | |
| download | rust-b4457fb8a2157d7e9a983ba67e5554509017379d.tar.gz rust-b4457fb8a2157d7e9a983ba67e5554509017379d.zip | |
Rollup merge of #23859 - pnkfelix:fsk-lesser-box, r=nikomatsakis
Disallow writing through mutable pointers stored in non-mut Box. Fix #14270 The fix works by making `cmt::freely_aliasable` result more fine-grained. Instead of encoding the aliasability (i.e. whether the cmt is uniquely writable or not) as an option, now pass back an enum indicating either: 1. freely-aliasable (thus not uniquely-writable), 2. non-aliasable (thus uniquely writable), or 3. unique but immutable (and thus not uniquely writable, according to proposal from issue #14270.) This is all of course a giant hack that will hopefully go away with an eventually removal of special treatment of `Box<T>` (aka `ty_unique`) from the compiler.
Diffstat (limited to 'src/rustllvm/ExecutionEngineWrapper.cpp')
0 files changed, 0 insertions, 0 deletions
