Type compatibility rules?