>I read this as saying that it's a requirement on the application to ensure >that character classes are correctly formed, and it's unspecified behavior >if they're not. > >So you're right: people should not count on shells treating improperly- >formed character classes as literal characters.
Thank you for the explanation. I think throwing an error would be better than an undefined behaviour. Bash throws error for solo parenthesis, a similar technique could be used here. Regards, Zoltan