I was working on an identifier for Raccoon to return the ISO 8601 standard week-of-the-year from a specific date. I needed to take advantage of $ctime() to parse a date string to unix timestamp. I discovered trying to construct my date string, some portions weren't evaluating thus returning a blank timestamp.
I was doing something along the lines of $ctime(%month %day %year %time)
With the help of maroon, we discovered it was because of the shorthand month december "Dec" was causing the issue.
maroon's rigorous tests have found that multiple strings cause this issue that are also mIRC commands. So far, inc, dec and set cause the same exact issue. It seems to only affect variables that follow directly after that text if the first parameter inside the ()'s will evaluate to one of these three words, or is literally one of these three words.
Below is an alias to show what's happening for the following examples ran on mIRC 7.66 on Windows 10.
testme { return $qt($parms) }
//var %x = 1 | echo -a $testme(Dec %x)
"Dec %x"
//var %x = 1 , %y = Dec | echo -a $testme(%y %x)
"Dec %x"
//var %x = 1 , %y = Dec | echo -a $testme(%y %x %y %x)
"Dec %x Dec 1"
The unusual part, this doesn't happen with evaluation brackets:
//var %x = 1 | echo -a $testme( [ Dec %x ] )
"Dec 1"
//var %x = 1 , %y = Dec | echo -a $testme( [ %y %x ] )
"Dec 1"