diff options
| author | bors <bors@rust-lang.org> | 2014-02-27 18:51:53 -0800 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2014-02-27 18:51:53 -0800 |
| commit | 700fd35fb9d448c5e1658c3cec9c1153c57cc802 (patch) | |
| tree | 2a2487273a51dda7ce9e917802986588e8bbaa45 /src/rustllvm/ExecutionEngineWrapper.cpp | |
| parent | f01a9a8d02f6c09b89a3cecadaa5b62073381180 (diff) | |
| parent | 59a04f5b122793134cd3e9b98d2b361cbafae482 (diff) | |
| download | rust-700fd35fb9d448c5e1658c3cec9c1153c57cc802.tar.gz rust-700fd35fb9d448c5e1658c3cec9c1153c57cc802.zip | |
auto merge of #11979 : FlaPer87/rust/static, r=nikomatsakis
This pull request partially addresses the 2 issues listed before. As part of the work required for this PR, `NonCopyable` was completely removed.
This PR also replaces the content of `type_is_pod` with `TypeContents::is_pod`, although `type_is_content` is currently not being used anywhere. I kept it for consistency with the other functions that exist in this module.
cc #10834
cc #10577
Proposed static restrictions
=====================
Taken from [this](https://github.com/mozilla/rust/pull/11979#issuecomment-35768249) comment.
I expect some code that, at a high-level, works like this:
- For each *mutable* static item, check that the **type**:
- cannot own any value whose type has a dtor
- cannot own any values whose type is an owned pointer
- For each *immutable* static item, check that the **value**:
- does not contain any ~ or box expressions (including ~[1, 2, 3] sort of things, for now)
- does not contain a struct literal or call to an enum variant / struct constructor where
- the type of the struct/enum is freeze
- the type of the struct/enum has a dtor
Diffstat (limited to 'src/rustllvm/ExecutionEngineWrapper.cpp')
0 files changed, 0 insertions, 0 deletions
