Q_GFVAL
((Q_GIVAL(a) == Q_GIVAL(b)) && (Q_GFVAL(a) fraccmp Q_GFVAL(b))))
, Q_GFVAL(q) \
Q_SIFVALS(*(l), Q_GIVAL(r), Q_GFVAL(r)); \
(Q_GFVAL(b) == 0 ? 0 : \
((Q_GFVAL(*(a)) << Q_NFBITS(*(a))) / Q_GFVAL(b)))); \