It seems mIRC has trouble working with $& if it's in the middle of an /if statement, here's an example section of a script that it bugs on:
if ($left(%window,1) == @) && (!$window(%window)) && (%x isnum 0-) && (%y isnum 0-) && (%width isnum 0-) && (%height isnum 0-) { $&
window $+(-d,$iif(%desktop == $true,h),k,$iif(%ontop == $true,o),pB) $+(+d,$iif(%desktop != $true,L)) %window %x %y %width %height }
The above gives the following error, but
only if part of the condition is $false:
* /if: open bracket not found (line 273, GUI.mrc)
As you can see, it clearly has a matching amount of ( and ).
I'm using $& a lot to keep the horizontal scrollbar from showing so I can edit the code without having to scroll.
Edit:
Here's two aliases that anyone can use to see if it happens to them:
alias testing {
if ($false) { $&
echo -a bug }
}
alias testing2 {
if ($true) { $&
echo -a bug }
}
/testing gives the /if error, /testing2 echo's "bug".
Edit 2: mIRC 6.16, XP Pro (No SP2)