Consider the following examples:

Code:
clear
confirm new variable byte
confirm new variable byte int
confirm new variable _n
None of the above throws an error. I think all of the above should throw an error because all arguments are invalid variable names. Not flagging invalid variable names as such defeats the purpose of confirm.