Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: 4.3.12-dev-1 compile warning on MacOS
On Jul 18, 3:50pm, Peter Stephenson wrote:
} Subject: Re: 4.3.12-dev-1 compile warning on MacOS
}
} > rlimits.c:401: warning: format '%lu' expects type 'long unsigned int', but argument 2 has type 'rlim_t'
}
} Sounds like RLIMT_T_IS_LONG_LONG should be defined but isn't.
}
} Is rlim_cur not rlim_t, for some reason? Or are the some flags
} missing when this is compiled?
config.log fragment:
configure:14214: checking where the RLIMIT macros are located
configure:14247: result: /usr/include/sys/resource.h
configure:14263: checking if rlim_t is longer than a long
[...]
| #ifdef HAVE_SYS_TIME_H
| #include <sys/time.h>
| #endif
| #include <sys/resource.h>
| main(){struct rlimit r;exit(sizeof(r.rlim_cur) <= sizeof(long));}
configure:14318: result: no
configure:14399: checking if the rlim_t is unsigned
configure:14426: gcc -o conftest -Wall -Wmissing-prototypes -O2 -Wl,-x
conftest.c -liconv -ldl -ltermcap -lm -lc >&5
conftest.c:223: warning: return type defaults to 'int'
conftest.c: In function 'main':
conftest.c:223: warning: implicit declaration of function 'exit'
conftest.c:223: warning: incompatible implicit declaration of built-in function
'exit'
configure:14429: $? = 0
configure:14435: ./conftest
configure:14438: $? = 0
configure:14454: result: yes
configure:14465: checking for rlim_t
configure:14496: gcc -c -Wall -Wmissing-prototypes -O2 conftest.c >&5
conftest.c: In function 'main':
conftest.c:228: warning: unused variable 'l'
configure:14502: $? = 0
configure:14517: result: yes
Why does it check for the existence of rlim_t after checking for the
type?
/usr/include/sys/resource.h:typedef __uint64_t rlim_t;
/usr/include/i386/_types.h:typedef unsigned long long __uint64_t;
I can only conclude that long and long long are both 64 bits but that
the compiler treats %ul as incompabible with the latter.
Messages sorted by:
Reverse Date,
Date,
Thread,
Author