Safer, more restrictive optional argument fixing