fr_value_box_t one, two, out;
fr_binary_op_t calc = NULL;
- /*
- * All of the types are the same. Just do the work.
- */
- if ((dst->type == in1->type) &&
- (dst->type == in2->type)) {
- if (!calc_integer_type[dst->type]) return invalid_type(dst->type);
-
- return calc_integer_type[dst->type](ctx, dst, in1, op, in2);
- }
-
/*
* We don't do upcasts on shifting.
*
goto calc_it;
}
+ /*
+ * All of the types are the same. Just do the work.
+ */
+ if ((dst->type == in1->type) &&
+ (dst->type == in2->type)) {
+ if (!calc_integer_type[dst->type]) return invalid_type(dst->type);
+
+ return calc_integer_type[dst->type](ctx, dst, in1, op, in2);
+ }
+
/*
* Upcast to the largest type which will handle the
* calculations.