Per call of the function holding the dispatch call, how decide narrows the dispatch for the classes the context of that call gives, and where that leaves more than one of targets beyond what shared rules out for every call, per call of the function holding that call in turn, up to a few calls deep.
Whether one of targets is a method the program registers with setMethod, so that the call dispatches on S4 classes.
The <prefix>.<class> methods among targets an S3 dispatch on the objects objects cannot run, and what NextMethod() in each method it runs may run, undefined if the class of an object is not known.
The methods among targets the S4 dispatch of call (a call of name) cannot run for the classes of its arguments, and the methods callNextMethod() in each method may run, undefined if nothing can be narrowed.
What the narrowing of the calls of one linking pass shares: the S4 methods of the program and its class hierarchy, found once.