nil-safe set union