(no title)
marwatk | 3 years ago
So you have to resort to a poor man's stack trace: if err != nil { return fmt.Errorf("my thing: %w", err) }
(We use wrapcheck via golangci-lint to enforce it because not having context for an error has bitten us so many times)
Gibbon1|3 years ago
Record the error line number where the error happened. Use __builtin_return_address(0) to fink on the caller.
Idle thoughts. Despite it's provenience BASIC's on error goto has merit. The problem with try/catch is creating scoped blocks of code that's annoying.
vs Also a thought is having a separate error_return keyword. And the ability to mark functions with 'no error'metaltyphoon|3 years ago