protected BinaryOpSupportingOnlyIntegralOperands(Expr left, Expr right)
: base(left, right) {
if (!(left.Type is LongType || left.Type is ULongType)) {
throw new InvalidOperationException("Only support long or ulong.");
}
this.Type = left.Type.GetQualifiedType(true, false);
}