I'm not sure this is actually a good idea, given the potential for ambiguity and backwards compatibility considerations -- I'm kind of leaning towards the deprecate/error option on balance :-). But it's an option that would probably be less confusing than the status quo, and would make it easier to write the kind of straddling code the original poster was trying to write.