Description
Initial report #84277 (comment)
We have a problem in our project related to the new question mark desugaring. We use the track_caller
feature in From::from
implementation of the error types to collect stack traces with generics and auto and negative impl traits magic implemented by @sergeyboyko0791 (https://github.com/KomodoPlatform/atomicDEX-API/blob/mm2.1/mm2src/common/mm_error/mm_error.rs).
After updating to the latest nightly toolchain this stack trace collection started to work differently. I've created a small project for the demo: https://github.com/artemii235/questionmark_track_caller_try_trait_v2
cargo +nightly-2021-05-17 run
outputs Location { file: "src/main.rs", line: 18, col: 23 }
as we expect.
cargo +nightly-2021-07-18 run
outputs Location { file: "/rustc/c7331d65bdbab1187f5a9b8f5b918248678ebdb9/library/core/src/result.rs", line: 1897, col: 27 }
- the from_residual
implementation that is now used for ?
desugaring.
Is there a way to make the track caller work the same way as it was before? Maybe we can use some workaround in our code?
Thanks in advance for any help!