fix for issue #539 -- abs() nonsensical in the unsigned domain 

See the "do clean up" part below. You should run the dtor callables corresponding to those argument conversions which have succeded (I'm afraid that's gonna require a bit of complication, for example a separate array of bools to indicate which arguments have been successfully converted).