He dwarf_next_cfi function has some clever code which skips over the processing of the augmentation string content if the first character is 'z' (for sized augmentation). This would be OK if it wouldn't be for the fact that the augment processing loop produces additional information, namely, it fills in the fde_augmentation_data_size fields. That information isn't available elsewhere. In addition, the loop over the augment string is incorrect because the interpretation of the P, L, and R entries depends on 'z' being present. in the absence of 'z', when the loop would be executed in the current version, the interpretation of those entries is not the same. In the patch below I've removed the shortcut and fixed the handling of the P, L, and R entries. I've also added an additional test checking that the entries of the augmentation string don't guide the code to consume more data then is indicated in the 'z' data. libdw/ChangeLog 2022-08-09 Ulrich Drepper * dwarf_next_cfi.c (dwarf_next_cfi): Don't skip processing the augmentation string. Be more stringent what to accept.