pub fn composite(
types: &mut Types,
left: TypeId,
right: TypeId,
) -> Option<TypeId>Expand description
The composite type of two compatible types, 6.2.7p3, and None when they are not
compatible.
It takes whatever each side knows: the size from the declaration that had one, the parameter list from the declaration that was a prototype. This is what a caller merging two declarations of one name should store, rather than either type it was given.