We've always done this on our machines for all mail systems we have used. Why not reject virus infected mail at SMTP time with clamav, instead of waiting until the message is accepted, and then discarding it via procmail? Better to reject at SMTP time since then the sender knows their mail was not received, among other advantages.
Many ways to do this. Since postfix 2.3 now supports sendmail milters, you can simply run clamav-milter. This would allow the removal of the code for clamav in procmailrc of course. I suppose you could then even use this to stop outgoing virus infected mail as well (from email clients), a nice side benefit.
Anyway, just thought I'd throw this out there since it's to me a very good way to handle infected emails, at smtp time.
Likely, if you did this, you'd want to have the option of doing it either way. Perhaps someone has a good reason for doing it the "old way", though, not sure what that would be. It's simply better behavior the "new" way.