The extension has the following syntax:
__builtin_call_with_static_chain(Call, Chain) where Call must be a function call expression and Chain must be of pointer type
This extension performs a function call Call with a static chain pointer
Chain passed to the callee in a designated register. This is useful for
calling foreign language functions whose ABI uses static chain pointers
(e.g. to implement closures).
It would seem better to inherit the object kind from Call here, even though in practice a call should always be OK_Ordinary.