ty
span
IntRange
We prefer to grab `ty` and `span` from `pcx`. This makes it consistent with other constructors.