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, Andrew