delaying processing of component_refs leads to slightly weird scoping rules
(when a component_ref shadows an identifier which is used in a subsequent
argument)

incomplete types as args to components?
default_conversion and type variables (quick guess: type variables can't
be used where those are expected, anyway)
