The whenTrue and whenFalse sets need to be merged for non-boolean expressions. Reviewed-by: mcimadamore