[DynInst_API:] [dyninst/dyninst] 636007: Fix responsibility inversion in Module::finalizeRa...


Date: Tue, 05 Sep 2023 11:08:46 -0700
From: Tim Haines <noreply@xxxxxxxxxx>
Subject: [DynInst_API:] [dyninst/dyninst] 636007: Fix responsibility inversion in Module::finalizeRa...
  Branch: refs/heads/master
  Home:   https://github.com/dyninst/dyninst
  Commit: 63600787a5ff07d1fdc03835c3fcb99731e65a9a
      https://github.com/dyninst/dyninst/commit/63600787a5ff07d1fdc03835c3fcb99731e65a9a
  Author: Tim Haines <thaines.astro@xxxxxxxxx>
  Date:   2023-09-05 (Tue, 05 Sep 2023)

  Changed paths:
    M symtabAPI/h/Module.h
    M symtabAPI/src/Module.C
    M symtabAPI/src/Symtab.C

  Log Message:
  -----------
  Fix responsibility inversion in Module::finalizeRanges (#1498)

A Module shouldn't modify the Symtab object to which it belongs. It
knows what ranges belong to it (see
Object::fix_global_symbol_modules_static_dwarf), so it can munge them
into a collection of `ModRange`s.

The `ranges_finalized` member was never needed as the only place
it was set was in `finalizeRanges` which is the only place where
`ranges` was emptied.


[← Prev in Thread] Current Thread [Next in Thread→]