On Thu, 2017-12-14 at 14:53 +0100, Ulf Hermann wrote: > On 12/14/2017 02:51 PM, Mark Wielaard wrote: > > This is clever and indeed cu_sec_idx () is not generic enough. > > But this is also somewhat inefficient. I am working on DWARF5 support > > and there a CU can come from even more different sections (or file). So > > I am changing Dwarf_CU to have an explicit section to which is it is > > associated. This can then also be used by the "fake" CUs like created > > in dwarf_getmacros. > > Mind that the two most common cases are 0 and 1. In fact nothing else > was supported before this change. So, most of the time this will not > do a lot of iteration. yes, but the original code really was not correct. The attached patch fixes it by adding an explicit sec_idx field to the Dwarf_CU struct that is set whenever a struct Dwarf_CU is created, so that we never have to guess. This patch combined with the overflow fix makes all testcases PASS. Cheers, Mark