18 Commits

Author SHA1 Message Date
Basile Desloges
34d36c0168 mir-borrowck: Add borrow data parameter to report_illegal_mutation_of_borrowed() 2017-09-26 19:09:56 +02:00
Felix S. Klock II
e319f4093c Remove now dead code. 2017-09-25 14:02:39 +02:00
Felix S. Klock II
d9d10c1628 Make mir-borrowck more closely match (draft) NLL RFC.
In particular:

 * introduce the shallow/deep distinction for read/write accesses

 * use the notions of prefixes, shallow prefixes, and supporting prefixes
   rather than trying to recreate the restricted sets from ast-borrowck.

 * Add shallow reads of Discriminant and ArrayLength, and treat them
   as artificial fields when doing prefix traversals.
2017-09-25 14:02:34 +02:00
Felix S. Klock II
c4c32b24bd More fine-grained delineation for mir-borrowck errors. 2017-09-25 13:02:17 +02:00
Keith Yeung
ed59a868dd Add span labels for E0505 for MIR borrowck 2017-09-23 23:44:51 -07:00
Keith Yeung
1797a942b7 Add span label to E0381 for MIR borrowck 2017-09-23 03:11:05 -07:00
Basile Desloges
8c1b958cf7 mir-borrowck: Add FIXME comment to report name of field instead of index at a later date 2017-09-21 16:42:30 +02:00
Basile Desloges
e84581192d mir-borrowck: Add span labels to report_use_while_mutably_borrowed() 2017-09-21 16:42:30 +02:00
Basile Desloges
86a7347fa1 mir-borrowck: Add borrow data parameter to report_use_while_mutably_borrowed() 2017-09-21 16:42:30 +02:00
Basile Desloges
70ef08f213 mir-borrowck: Add method to MIR borrowck context to retrieve the span of a given borrow 2017-09-21 16:42:30 +02:00
Eduard-Mihai Burtescu
e74f96e43f rustc_mir: use Local instead of Lvalue in Storage{Live,Dead}. 2017-09-04 08:01:46 +03:00
Eduard-Mihai Burtescu
2f42cd8489 rustc_mir: use Local in ProjectionElem::Index. 2017-09-03 21:55:41 +03:00
Eduard-Mihai Burtescu
8bdfd8a003 rustc: rename CodeExtent to Scope and RegionMaps to ScopeTree. 2017-09-01 23:27:48 +03:00
Alex Crichton
c872f47276 Merge remote-tracking branch 'origin/master' into gen 2017-08-25 07:15:12 -07:00
Felix S. Klock II
fbb099edca Fix logic error in test guarding prototype MIR borrowck code.
(This crept in during the shift from a transform to a query; I didn't
notice because my muscle memory was still always passing `-Z
mir-borrowck`, while my test cases *also* had the
`#[rustc_mir_borrowck]` attribute attached to them.)
2017-08-22 12:05:52 +02:00
Alex Crichton
5dc9d71521 Merge remote-tracking branch 'origin/master' into gen 2017-08-21 15:50:00 -07:00
Felix S. Klock II
224c6ca2ee Moved support code for rustc_mir::borrow_check query out of mod transform. 2017-08-21 13:10:13 +02:00
Felix S. Klock II
4da2a88abc Expose mir-borrowck via a query.
(A followup commit removes the mir::transform based entry point.)
2017-08-21 12:49:18 +02:00