On 06/04/2013 01:30 PM, Sean McBride wrote:
> 'CTestTestFdSetSize' is superficially happening in an OS header's macro:
>
> static __inline int
> __darwin_fd_isset(int _n, const struct fd_set *_p)
> {
> return (_p->fds_bits[_n/__DARWIN_NFDBITS] & (1<<(_n %
> __DARWIN_NFDBITS)));
> }
>
> where right right-hand side of the << is apparently 31. __DARWIN_NFDBITS is
> 32.
>
> Alas, gdb refuses to give me a backtrace. But there are only 9 FD_ISSET() in
> CMake, anyone familiar with this test/code?
The test covers CTest's ability to drive many child processes at once
so the file descriptor set is getting filled up. The FD_ISSET calls
in Source/kwsys/ProcessUNIX.c will be the ones triggering this. It
looks to me like the bug is in the OS header macro because the "1<<"
should be "1u<<".
-Brad
--
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers