better handling of nongeneric nulls when the type is supposed to be a value type