Domain variables may have attributes from other modules, as well as
blocked goals, attached to them. However, the CLPFD propagation phase
runs to completion before invoking handlers for such attributes and
resuming such blocked goals. This could mean in particular that upon
completion of the propagation phase, attribute handlers and blocked
goals for multiple variables are ready to execute. For details, see the
verify_attributes/3 hook at lib-atts.