This is not a bug. Based entirely upon what you said, ! is somethign that alters a condition, not a "boolean operator" (like && and ||, though these things don't exactly have names).

mIRC's behaviour can be accounted for easily this way: mIRC sees a condition of %something or $something as a condition in the sense of isop or isnum. So the ! will invert it. It sees an odd little expression that doesn't really mean anything like (%a) as an odd little expression that doesn't really mean anything and can be left alone. mIRC handles these things by making them always true. Because (%a) is not a condition in the sense of isop or isnum, the ! doesn't mean anything either. So the ! is part of the odd little expression that doesn't really mean anything and is always true.

Anyway, fixing your so-called "bug" would not improve the functionality of mIRC at all since you can invert all meaningful conditions.

Last edited by madewokherd; 12/11/03 09:39 PM.