return compare;
}
+#if SIZEOF_DATUM >= 8
static inline int
ApplySignedSortComparator(Datum datum1, bool isNull1,
Datum datum2, bool isNull2,
}
else
{
-#if SIZEOF_DATUM == 8
- compare = (int64) datum1 < (int64) datum2 ? -1 :
- (int64) datum1 > (int64) datum2 ? 1 : 0;
-#else
- compare = (int32) datum1 < (int32) datum2 ? -1 :
- (int32) datum1 > (int32) datum2 ? 1 : 0;
-#endif
+ compare = DatumGetInt64(datum1) < DatumGetInt64(datum2) ? -1 :
+ DatumGetInt64(datum1) > DatumGetInt64(datum2) ? 1 : 0;
if (ssup->ssup_reverse)
INVERT_COMPARE_RESULT(compare);
}
return compare;
}
+#endif
static inline int
ApplyInt32SortComparator(Datum datum1, bool isNull1,
}
else
{
- compare = (int32) datum1 < (int32) datum2 ? -1 :
- (int32) datum1 > (int32) datum2 ? 1 : 0;
+ compare = DatumGetInt32(datum1) < DatumGetInt32(datum2) ? -1 :
+ DatumGetInt32(datum1) > DatumGetInt32(datum2) ? 1 : 0;
if (ssup->ssup_reverse)
INVERT_COMPARE_RESULT(compare);
}