Section: 29.9 [c.math] Status: NAD Submitter: Beman Dawes Opened: 2006-06-15 Last modified: 2016-02-10
Priority: Not Prioritized
View all other issues in [c.math].
View all issues with NAD status.
There is no div() function for unsigned integer types.
There are several possible resolutions. The simplest one is noted below. Other possibilities include a templated solution.
Add to 26.7 [lib.c.math] paragraph 8:
struct udiv_t div(unsigned, unsigned); struct uldiv_t div(unsigned long, unsigned long); struct ulldiv_t div(unsigned long long, unsigned long long);
Toronto: C99 does not have these unsigned versions because the signed version exist just to define the implementation-defined behavior of signed integer division. Unsigned integer division has no implementation-defined behavior and thus does not need this treatment.