gen_fun::add_union: context of result should be the union of the input contexts