-
Notifications
You must be signed in to change notification settings - Fork 109
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
read: Skip invalid ranges in RngListIter/LocListIter (#715)
I've encountered a toolchain which produces invalid ranges, where the end of the range is before the beginning. I want to fix that toolchain, of course, but I also noticed that tools like `llvm-addr2line` and `llvm-dwarfdump --lookup` apparently silently skip the invalid ranges, so they're able to give partial answers. By contrast, `gimli` returns an error in this case. Then the `addr2line` crate, for example, bubbles the error all the way out and doesn't return any results. The specific toolchain where I've encountered this is TinyGo (which uses LLVM), when building WebAssembly with the `wasip1` target. I tested TinyGo 0.32.0-dev and LLVM 17, and this was the shortest program I could find which produces invalid ranges: tinygo build -target=wasip1 /tmp/test.go ```go package main import "os" func main() { os.Lstat("some-filename") } ```
- Loading branch information
1 parent
0fe475c
commit e095972
Showing
3 changed files
with
6 additions
and
21 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters