Refactoring to place size logic into PDataType.isSizeCompatible.