On Wed, Nov 6, 2024 at 6:32 PM Mark Wielaard <m...@klomp.org> wrote: > > Hi Aaron, > > On Wed, Nov 06, 2024 at 04:15:30PM -0500, Aaron Merey wrote: > > On Wed, Nov 6, 2024 at 2:35 PM Mark Wielaard <m...@klomp.org> wrote: > > > > if (reloc_debug_only) > > > > { > > > > + if (ehdr->e_type != ET_REL) > > > > + { > > > > + /* Only ET_REL files should have debug relocations to remove. > > > > */ > > > > + error (0, 0, _("Ignoring --reloc-debug-sections-only for " \ > > > > + "non-ET_REL file '%s'"), fname); > > > > + goto fail_close; > > > > + } > > > > > > Do we have to fail here? I think it is nicer for the user to just > > > turn this into an warning with > > > > > > if (ehdr->e_type != ET_REL) else if (handle_debug_relocs (...)) > > > > If we don't fail then strip will need to do more work copying sections > > over to the 'newelf' handle in order to properly overwrite the input file > > with newelf. > > > > Since --reloc-debug-sections-only should be a no-op for non-ET_REL files > > it makes sense to skip that extra work and avoid overwriting the input file. > > Aha, so by not goto done you skip the actual (supposed to do nothing) > work. goto fail_close isn't so much "failing", but more about closing > without doing any more work. Which is fine because when > --reloc-debug-sections-only "No other stripping is performed". > > OK. Sorry for being dense.
Thanks Mark, pushed. Aaron