Function documentation is messed up

(Bug, Closed -> Fixed, Priority: Critical, Test Status: No automated tests yet , Reported By Bad Link: Thing 3y284oe not found, )
Summary: Pointed out by Eric, but I'd vaguely noticed it myself recently.
There are two clear problems:
  1. In a multi-parameter function, each parameter is getting its own parentheses. This isn't Haskell; we don't actually have currying (yet); so that's just plain wrong.
  2. The "Produces" clause is getting tacked onto the end of the last parameter, instead of showing on its own.
The first one is undoubtedly the result of the recent changes to the way _if handles Lists; don't know where the second one came from.