RFA: osabi: correct test for compatible handlers

Daniel Jacobowitz drow@mvista.com
Wed Oct 22 19:11:00 GMT 2003


On Wed, Oct 22, 2003 at 02:49:12PM -0400, Andrew Cagney wrote:
> >+   /* BFD's 'A->compatible (A, B)' functions return zero if A and B are
> >+      incompatible.  But if they are compatible, it returns the 'more
> >+      featureful' of the two arches.  That is, if A can run code
> >+      written for B, but B can't run code written for A, then it'll
> >+      return A.
> >+ 
> >+      struct bfd_arch_info objects are atoms: that is, there's supposed
> >+      to be exactly one instance for a given machine.  So you can tell
> >+      whether two are equivalent by comparing pointers.  */
> >+   return (a == b || a->compatible (a, b) == a);
> 
> Hey, nice.
> 
> Don't worry about a can_run_code_for function though, having the logic 
> inline makes what's happening easier to understand (and will simplify a 
> follow-on wild-card patch I've got pending).

I'm curious, what do you mean by wild-card that isn't handled by
correcting various ->compatible functions?

[Stylisticly I prefer the code out-of-line since the name describes the
test so well.]

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer



More information about the Gdb-patches mailing list