+ if ( width_a == width_b)
+ return value_compare_3way (&(*a)->from, &(*b)->from, width_a);
+
+ if ( width_a == 0 && width_b != 0)
+ return -1;
+
+ if ( width_b == 0 && width_a != 0)
+ return +1;
+
+ return buf_compare_rpad (CHAR_CAST_BUG (const char *, value_str (&(*a)->from, width_a)), width_a,
+ CHAR_CAST_BUG (const char *, value_str (&(*b)->from, width_b)), width_b);