I've done some searches under "Comment" "Bracket" Brace" and "{" and "}" and not found this being discussed anywhere.

I've just spent many hours trying to debug a script only to discover that the a comment at the end of the line that starts with a ; character after the code does not stop the parser from reading and processing a } character and therefore unintentionally closing a loop/event. Running v7.76

e.g.
Code
ON *:TEXT:whatever:#channel: {
  IF(1==1) {Command1 | Command2 }        ; | TestCommand3 }
  AlwaysCommand
}
Will output Command1 and Command2.

The "AlwaysCommand" will never execute as mIRC will treat the last } after "TestCommand3" on the IF line as the closing bracket for the ON TEXT event. You can see this instantly in the way the script window will indent the code.

Remove that supposedly commented text " | TestCommand3 }", or even just the "}" and everything will ident and execute as expected.

Having read this post and the replies I don't expect this is critical enough to warrant a serious "fix", it sounds like it might be very difficult to fix.

I'm capturing here so some future fool like me can find an answer before banging their head off the desk for several hours. confused

Khaled: I am constantly in awe of the power and scope of the script engine "as-is". Thanks for everything.