[cxx-interop] [NFC] Treat return type of ctor as parent type
In 53ca5c57309a45700978e4d92c7f5a215fa33547, we started treating the
return type of a constructor as the type that it is constructing
(rather than void, which is the return type stored in the AST) in
some places. This was necessary to suppress warnings that constructors
were annotated with RETURNS_{,UN}RETAINED despite them not technically
returning a FRT.
This patch adjusts some other places to be consistent about this.
However, this patch should be an NFC because constructors shouldn't
end up along these code paths, because by the time we're here we
should already have wrapped those constructors with synthesized shim
factory functions.