Redefinition of `struct in6_addr'?

Larry Hall (Cygwin) reply-to-list-only-lh@cygwin.com
Wed Apr 24 21:21:00 GMT 2013


On 4/24/2013 2:12 PM, Corinna Vinschen wrote:
> On Apr 24 19:53, Samuel Thibault wrote:
>> Corinna Vinschen, le Wed 24 Apr 2013 19:51:07 +0200, a écrit :
>>>>> /usr/include/cygwin/in6.h:75:8: error: redefinition of ‘struct in6_addr’
>>>>> /usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../include/w32api/in6addr.h:17:16:
>>>>> note: originally defined here
>>>
>>> Don't know this file but this is a bug in config.h.  struct in6_addr
>>> is defined in a system header, so it should not be gratuitously defined
>>> in a project header, especially if the definition collides with the
>>> right one from the system header.
>>
>> Mmm, but here it's w32api definition vs cygwin definition.
>
> Maybe I didn't read it exactly, but the bottom line here is, when
> building for Cygwin, either use the POSIX network headers (preferredly),
> or use winsock.h.  Mixing them is not supported.

Yeah, though this case is a bit buried, so it's not obvious.  Also the code
is from 2008, so I expect it has suffered some bit rot over time with
respect to Cygwin.  In any case, it looks like removing iphlpapi.h from
sysdep.c solves the problem.


-- 
Larry

_____________________________________________________________________

A: Yes.
 > Q: Are you sure?
 >> A: Because it reverses the logical flow of conversation.
 >>> Q: Why is top posting annoying in email?

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list