Make drest a list instead of a pair, replace an int-err with a match error which has source location, and remove static name for rest argument in error case.