As of SWI-Prolog 7.3.12, the arity of terms has changed from int to size_t.
It's a bit weird to see
arity labeled as of type
size_t but why not. 🤔
"Type size_t is a s typedef that's an alias for some unsigned integer type, typically unsigned int or unsigned long , but possibly even unsigned long long . Each Standard C implementation is supposed to choose the unsigned integer that's big enough–but no bigger than needed–to represent the size of the largest possible object on the target platform."