> Hello, > > This came from an thread between myself and MarkK (I can't find the url). > > The current native code constructs its target vector using a convoluted combination of #ifdefs and global functions. > > This patch replaces all that with what is effectively a runtime inheritance structure: > > inf-ptrace is-a inf-child is-a target > > I've updated/tested NetBSD/PPC, with a tweak to nbsdppc-nat. that further extends the above with: > > nbsdppc-nat is-a inf-ptrace > > there were no regressions. > > The intent is for all natives to eventually migrate to this. > > Comments? > > Right now I'm more interested in high-level stuff - the idea and the strategy. I'm sure the implementation will evolve as more natives come on board, and as I eliminate a few remaining globals. > > I'll leave this for a week, I've checked in the attached, per suggestions. I've left out the new commands (keeping new functionality separate from refactoring). I've also left a few things like call_ptrace in infptrace.c. committed, Andrew