Re: [cmake-developers] Rogue7 dashboards and clang undefined behaviour

2013-06-07 Thread Sean McBride
On Tue, 4 Jun 2013 13:45:34 -0400, Brad King said:

>> '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<<".

Agreed.  I'll suppress both these tests and unsuppress them when the libarchive 
and Apple people fix their respective bugs.

Cheers,

-- 

Sean McBride, B. Eng s...@rogue-research.com
Rogue Researchwww.rogue-research.com 
Mac Software Developer  Montréal, Québec, Canada


--

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


Re: [cmake-developers] Rogue7 dashboards and clang undefined behaviour

2013-06-04 Thread Brad King
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


[cmake-developers] Rogue7 dashboards and clang undefined behaviour

2013-06-04 Thread Sean McBride
Hi all,

I recently tweaked my Rogue7 dashboard's undefined behaviour checks and now 
there are two test failures:


'ExternalProject' is a libarchive bug which I filed here:


'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?

Cheers,

-- 

Sean McBride, B. Eng s...@rogue-research.com
Rogue Researchwww.rogue-research.com 
Mac Software Developer  Montréal, Québec, Canada


--

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