about summary refs log tree commit diff
path: root/src/libstd/sys_common/os_str_bytes.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2019-12-07 21:14:39 +0000
committerbors <bors@rust-lang.org>2019-12-07 21:14:39 +0000
commitde17464b14e503edca6625daa9cd4c338ffafee2 (patch)
tree88969c0d7bbddc53c7fa798ae477efad19f2147c /src/libstd/sys_common/os_str_bytes.rs
parent5c5c8eb864e56ce905742b8e97df5506bba6aeef (diff)
parent15d1f7cffdc0b111123a6d34a356eae95af04676 (diff)
downloadrust-de17464b14e503edca6625daa9cd4c338ffafee2.tar.gz
rust-de17464b14e503edca6625daa9cd4c338ffafee2.zip
Auto merge of #65881 - anp:implicit-caller-location, r=eddyb,oli-obk
Implement #[track_caller] attribute. (RFC 2091 4/N)

Implements the `#[track_caller]` attribute in both const and codegen contexts.

The const implementation walks up the stack to find the nearest untracked callsite.

The codegen implementation adds an implicit argument to tracked function calls, and populates it with either a call to the previously-landed intrinsic or if the caller has `#[track_caller]` with a copy of the location passed to the current function.

Also includes a little cleanup and a few comments in the other caller location areas.

[Depends on: 65664](https://github.com/rust-lang/rust/pull/65664)
[RFC 2091 text](https://github.com/rust-lang/rfcs/blob/master/text/2091-inline-semantic.md)
[Tracking issue](https://github.com/rust-lang/rust/issues/47809)
[Tracking doc](https://paper.dropbox.com/doc/track_rfc_2091_impl-notes--Anf1NwnIb0xcRv31YLIadyj0Ag-rwCdRc2fi2yvRZ7syGZ9q#:uid=863513134494965680023183&h2=TODO-actually-pass-location-to)
Diffstat (limited to 'src/libstd/sys_common/os_str_bytes.rs')
0 files changed, 0 insertions, 0 deletions