The a& check in your example returning true is a bug in my opinion. & should be literal unless separated by spaces. When separated by spaces in a check, it should be treated as a word wildcard.

e.g. - This requires a $2 and cannot have a $3
Code:
on *:text:!identify &:?: { } 


e.g. - This also requires a $2 and cannot have a $3
Code:
if (!identify & iswm $1-) { } 


Of course, & is also a bitwise operator, so you have to watch how you use it or you risk the wrong interpretation.


Invision Support
#Invision on irc.irchighway.net