about summary refs log tree commit diff
path: root/src/librustc_mir/dataflow/framework/direction.rs
AgeCommit message (Collapse)AuthorLines
2020-08-30mv compiler to compiler/mark-576/+0
2020-06-16rename location field of Drop terminators to placeRalf Jung-2/+2
2020-06-10Track span of function in method calls, and use this in #[track_caller]Aaron Hill-1/+1
Fixes #69977 When we parse a chain of method calls like `foo.a().b().c()`, each `MethodCallExpr` gets assigned a span that starts at the beginning of the call chain (`foo`). While this is useful for diagnostics, it means that `Location::caller` will return the same location for every call in a call chain. This PR makes us separately record the span of the function name and arguments for a method call (e.g. `b()` in `foo.a().b().c()`). This `Span` is passed through HIR lowering and MIR building to `TerminatorKind::Call`, where it is used in preference to `Terminator.source_info.span` when determining `Location::caller`. This new span is also useful for diagnostics where we want to emphasize a particular method call - for an example, see https://github.com/rust-lang/rust/pull/72389#discussion_r436035990
2020-06-07rename FalseEdges -> FalseEdgeRalf Jung-1/+1
2020-05-29Improve inline asm error diagnosticsAmanieu d'Antras-1/+1
2020-05-18Add asm! to MIRAmanieu d'Antras-0/+6
2020-05-03Support backward dataflow analysesDylan MacKenzie-0/+570