Loading...
Searching...
No Matches
Go to the documentation of this file.
16static inline signed int max2_signed(
signed int a,
signed int b) {
17 return (a > b) ? a : b;
21static inline unsigned int max2_unsigned(
unsigned int a,
unsigned int b) {
22 return (a > b) ? a : b;
26static inline float max2_float(
float a,
float b) {
27 return (a > b) ? a : b;
30#define MAXOF2(a, b) _Generic((a) + (b), \
31 signed int: max2_signed, \
32 unsigned int: max2_unsigned, \
36#define MAXOF3(a, b, c) MAXOF2(MAXOF2(a, b), c)
37#define MAXOF4(a, b, c, d) MAXOF2(MAXOF2(a, b), MAXOF2(c, d))
41#define DISPATCH_MAXOF(_1, _2, _3, _4, NAME, ...) NAME
42#define MAXOF(...) DISPATCH_MAXOF(__VA_ARGS__, MAXOF4, MAXOF3, MAXOF2)(__VA_ARGS__)