I have just noticed that oper_select_candidate()'s first try at resolving unknown-type inputs (parse_oper.c lines 372-410 in current sources) is entirely redundant, because the case it is looking for has already been tried by oper_exact(). I propose removing that code, to make it more like func_select_candidate. Have I missed anything? regards, tom lane