We have an eggdrop bot on channel, and when I do '!ping', mIRC fails to respond to it. Bug occurrs in 6.16, 6.17 and even 5.91 (!)
From a packet dump in Ethereal:
PRIVMSG #urban75 :!ping
:e911!e911@B1CACD66.59D62548.C9984D92.IP PRIVMSG Test591 :.PING -1481841805.
No reply is ever sent by mIRC.
Using the JPilot web client, if I do the same ...
PRIVMSG #urban75 :!ping
:e911!e911@B1CACD66.59D62548.C9984D92.IP PRIVMSG Veltesting :.PING -1481183949.
NOTICE e911 :.PING -1481183949.
:e911!e911@B1CACD66.59D62548.C9984D92.IP PRIVMSG #urban75 :e911 -> Veltesting -> e911 == 1218 ms
The CTCP specifications (such as they are, at
http://www.invlogic.com/irc/ctcp.html) say:
4.2 PING <space> <arg> (required)
This request is intended to determine the round trip time of a message from the initiator to the recipient and back to the initiator. The precipient is required to return a duplicate of the received argument without modification. Each client will define its own format for the 16 byte argument. Requests with arguments longer than 16 characters should be silently dropped.
The reply will be formatted as:
<marker> PONG <space> <arg> <marker>
Various clients include the ability to run scripts which may choose to receive and reply to this request. At no time should any such script be permitted to filter the request from the client's internal handling, and as such, a client is REQUIRED to produce its own PONG response, subject to flood control.
Am I correct in thinking this is a bug in mIRC?
mIRC also violates the two parts of this standard which I've put in bold, although the second violation is actually a handy feature rather than a bug imho

Edit to add:
[16:09] -> [e911] VERSION
[16:09] [e911 VERSION reply]: eggdrop v1.6.17