While I don't argue that 250 is a great stopping point for $submenu to stop continuous loops etc (even though it dosnt appear to be noted anywhere), I think mIRC should still send the 'end' request to the submenu identifier (as it does with start)

So the problem is, mIRC should send 'start' then '1', '2', '3'.... etc then 'end'.
But if there are 250 items, mIRC Stops (and dosnt request 'end').

'end' allows you to set up seperators and/or cleanup code etc.

I have tested this on WinXP & Vista, With mIRC 6.31 (Clean Install)

Code:
menu * {
  menutest
  .$submenu($menutest($1))
}
alias -l menutest {
  echo -a Requested Menu Item: $1
  return $1 $+ :noop
}


[02:16] * Titanic has quit IRC (Excess Flood)