A number of tests in the fn-map-pairs test set follow a pattern like this:
fn:map-pairs( (fn:concat#2, fn:concat#2), (), () )
Since the implementation can determine when the second or third arguments are statically empty that the result will always be empty, there is no obligation to detect the type error in the first argument. I suggest replacing the second and third arguments with non-empty sequences. Meanwhile I shall add () as an acceptable result.
I am assigning this one to Tim to comment.
I've added new tests to cover this.
Please mark as CLOSED if you agree with the resolution. Otherwise, REOPEN.