negate type promotion in conditions + fixes