Hi, as reported in bug #907624 ffindex autopkgtest fails with SIGSEGV in sid and buster. I've tested in stretch (gcc 6.3) and the code works fine. I've reported upstream[1] the results of my gdb session where I was able to find the exact code line[2] where the SIGSEGV is thrown. It turns out that the elements of a structure are not accessible:
(gdb) print entry->offset Cannot access memory at address 0x7 (full gdb log under [1] or in the bug log). In fact I tried in some more detailed debugging that any attempt to access one of the structure elements even for instance only injecting something like if ( !entry->offset ) { in line 554 will trigger the SIGSEGV. The values of the structure are set in line 350[3] and are OK there. The funktion that contains the failing line is action() [4] and called via a pointer to this function in line 563[5] (I admit I have no real idea why this pointer to a function should be needed. Its the only function that is used in this place and IMHO only adds an extra layer of complexity.) The structure is declared in the header file[6]. I admit I fail to see why the code works under stretch with gcc 6.3 but fails with gcc 8.2. Any idea? Kind regards Andreas. [1] https://github.com/soedinglab/ffindex_soedinglab/issues/7 [2] https://salsa.debian.org/med-team/ffindex/blob/master/src/ffindex.c#L554 [3] https://salsa.debian.org/med-team/ffindex/blob/master/src/ffindex.c#L350 [4] https://salsa.debian.org/med-team/ffindex/blob/master/src/ffindex.c#L541 [5] https://salsa.debian.org/med-team/ffindex/blob/master/src/ffindex.c#L563 [6] https://salsa.debian.org/med-team/ffindex/blob/master/src/ffindex.h#L30 -- http://fam-tille.de