>> I'd probably be tempted to use
>> (error (concat "No further undo information"
>> (and transient-mark-mode mark-active
>> " for region")))
> Yes, in this case I think yours is better. But if the argument is a variable:
> (lambda (arg) (error (format "This is the error: %s" arg)))
> would be preferable to
> (lambda (arg) (error "This is the error: %s" arg))
Not at all. The former is prone to bug out when "arg" contains "%"
somewhere. The latter works fine in this case.