It’s usually not really big fun, if you find a message like this in your procmail log file: “procmail: Missing action“.
Well, I don’t yet know of a procmail syntax checker, which is rather a pity, so the debugging is of a dynamic kind.
Just add “VERBOSE=on” in the beginning of your .procmailrc, enjoy the flood of “procmail: No match on …,”, and find your “procmail: Missing action” occasionally in the middle of it. You found the corrupted rule then. The rule in question might actually be a very rarely used one resp. one pretty at the end of your .procmailrc, so it may take a while resp. a couple of incoming mails, until it gets used and shows up.
Once you found and corrected the offender, I am quite sure, you will remove “VERBOSE=on” very quickly.
Update 2013-01-07:
This article attracted far too much SPAM, so I had to disable commenting.