aclements / libelfin

C++11 ELF/DWARF parser
MIT License
314 stars 99 forks source link

ignore dwarf extensions of gcc in the line table #41

Closed tetzank closed 4 years ago

tetzank commented 4 years ago

gcc 9 uses DWARF 4 by default with vendor extensions in the line table which results in a thrown exception. An application using libelfin cannot recover from an exception and still get a reasonable line table. Now, when a vendor extension is encountered, the type is set to invalid to get around the issue.

Fixes https://github.com/aclements/libelfin/issues/39 for me.

velichkov commented 4 years ago

I just tested this with gcc 8 on Fedora 29 system and it fixes the problem

sirupsen commented 4 years ago

Confirmed as fixing it too 👍