builtin.c:1921:35: warning: shifting a negative signed value is undefined [-Wshift-negative-value] static const time_t time_t_min = TYPE_MINIMUM(time_t); ^~~~~~~~~~~~~~~~~~~~ builtin.c:48:20: note: expanded from macro 'TYPE_MINIMUM' ? ~ (t) 0 << (sizeof (t) * CHAR_BIT - 1) : (t) 0)) ~~~~~~~ ^ builtin.c:1922:35: warning: shifting a negative signed value is undefined [-Wshift-negative-value] static const time_t time_t_max = TYPE_MAXIMUM(time_t); ^~~~~~~~~~~~~~~~~~~~ builtin.c:49:41: note: expanded from macro 'TYPE_MAXIMUM' #define TYPE_MAXIMUM(t) ((t) (~ (t) 0 - TYPE_MINIMUM (t))) ^~~~~~~~~~~~~~~~ builtin.c:48:20: note: expanded from macro 'TYPE_MINIMUM' ? ~ (t) 0 << (sizeof (t) * CHAR_BIT - 1) : (t) 0)) ~~~~~~~ ^ builtin.c:3836:2: error: use of undeclared identifier 'reslen' reslen = t1->stlen; ^ builtin.c:3839:33: error: use of undeclared identifier 'reslen'; did you mean 'wcslen'? return make_string(the_result, reslen); ^~~~~~ wcslen ./awk.h:1331:47: note: expanded from macro 'make_string' #define make_string(s, l) make_str_node((s), (l), 0) ^ /usr/include/wchar.h:132:8: note: 'wcslen' declared here size_t wcslen(const wchar_t *); ^ builtin.c:3839:9: warning: incompatible pointer to integer conversion passing 'size_t (const wchar_t *)' (aka 'unsigned long (const int *)') to parameter of type 'size_t' (aka 'unsigned long') [-Wint-conversion] return make_string(the_result, reslen); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./awk.h:1331:46: note: expanded from macro 'make_string' #define make_string(s, l) make_str_node((s), (l), 0) ^~~ ./awk.h:1671:50: note: passing argument to parameter 'len' here extern NODE *make_str_node(const char *s, size_t len, int flags); ^ 3 warnings and 2 errors generated. make[2]: *** [builtin.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2