Basically I have found a bug with tcleggdrop_mcpsfuncs.tcl not handling binds correctly
Here is 2 examples to illustrate what I mean
Example 1:
bind pub -|- !test0r testing; proc testing args { putlog $args }
This will work in an encrypted channel, no problem
Example 2:
bind pub -|- !test0r {testing $_pub1; #}; proc testing args { putlog $args }
This does not work in an encrypted channel
From looking at the code in tcleggdrop_mcpsfuncs.tcl, I see that it is "staticaly" handling the bind arguments, so it *always* expects "nickname uhost handle channel text" for pub/pubm binds (for example). However, instead of doing "generic" unbinds/"re"-binds, it could do a search of [binds] to get the "real" arguments if they are there, and if no "special" arguments are specified (as shown in Example 2), it should default to "nickname uhost handle channel text" bind arguments.