#216·errors

RFC: 允许自定义堆栈跟踪

作者: cyphar创建于 2019年11月29日更新于 2019年11月29日

目前还没有办法为错误提供自定义堆栈跟踪 - 堆栈跟踪是在 `Wrapf` (或其他类似的包装) 时捕获的。对于纯 Go 代码来说,这完全可以接受,但如果能够从不属于 Go 的库中添加堆栈跟踪,那将会很有用。推动这一需求的用例是 https://GitHub.com/openSUSE/libpathrs - 这是一个 Rust 库,我正在为其编写 Go 绑定。错误的根本原因在于 Rust 代码中,但 Rust 代码通过 C FFI 提供了在发生错误时的完整回溯。能够生成无损失的 Go 错误,在我看来,将会非常有用。