In $ctime(date string), if parm#1 containing a comma touching the year, it always evaluates the year as 1899. I encountered an RFC presenting a date like

String sDate = "Mar 25 2008, 12:06:30 GMT";

//var -s %a Mar 25 $rand(1601,9999) $+ , 12:06:30 , %b $ctime(%a) , %c $asctime(%b) , %d $gmt(%b)

Removing the $+ allows N to be calculated using the correct year. This behavior has changed across several versions.

//var -s %a Mar 25 2008, 12:06:30 , %b $ctime(%a) , %c $asctime(%b) , %d $gmt(%b)

In 7.57 this returns %b within year 1899
In 7.55 this returns %b as $null
In 6.35 this returns %b within correct year 2008