This function overload is similar to the existing FlatAffineConstraints::addLowerOrUpperBound. It constrains a dimension based on an affine map. However, in contrast to the other overloading, it does not attempt to align dimensions/symbols of the affine map with the dimensions/symbols of the constraint set. Instead, dimensions/symbols are expected to already be aligned.
Depends On D107726
I find this somewhat unfortunate.
How about addBound(unsigned pos, AffineMap boundMap, BoundType type) where enum class BoundType { EQ, LB, UB }; ?