```
int abs(int j);
long int abs(long int j);
long long int abs(long long int j);
float abs(float j);
double abs(double j);
long double abs(long double j);
```

Remarks: If abs() is called with an argument of type X
for which is_unsigned_v<X> is true and
if X cannot be converted to int
by integral promotion, the program is ill-formed.

See also: ISO C 7.12.7.2, 7.22.6.1