+#ifdef _NOQUAD
+#define SETHIGH(q, h) (q).val[_QUAD_HIGHWORD] = (h)
+#define SETLOW(q, l) (q).val[_QUAD_LOWWORD] = (l)
+#else /* QUAD */
+union _qcvt {
+ quad_t qcvt;
+ long val[2];
+};
+#define SETHIGH(q, h) { \
+ union _qcvt tmp; \
+ tmp.qcvt = (q); \
+ tmp.val[_QUAD_HIGHWORD] = (h); \
+ (q) = tmp.qcvt; \
+}
+#define SETLOW(q, l) { \
+ union _qcvt tmp; \
+ tmp.qcvt = (q); \
+ tmp.val[_QUAD_LOWWORD] = (l); \
+ (q) = tmp.qcvt; \
+}
+#endif /* QUAD */
+