support for casts from signed to unsigned and vice versa