<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Jan 13, 2015 at 12:34 PM, Paul Bone <span dir="ltr"><<a href="mailto:paul@bone.id.au" target="_blank">paul@bone.id.au</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Mon, Jan 12, 2015 at 05:02:10PM +1100, Julien Fischer wrote:<br>
><br>
> Hi Paul,<br>
><br>
> On Sat, 10 Jan 2015, Paul Bone wrote:<br>
><br>
>> extras/net/netdb.m:<br>
>> extras/net/sockets.m:<br>
>> extras/net/tcp.m:<br>
>> extras/net/types.m:<br>
>>    Include the correct header files.<br>
>><br>
>>    Fix the order of statements in a code block.<br>
>><br>
>>    Workarround the missing SHUT_RDWR macro on windows.<br>
>><br>
>>    Avoid use of socklen_t.<br>
>> ---<br>
>> extras/net/netdb.m   | 10 ++++++++--<br>
>> extras/net/sockets.m |  7 ++++---<br>
>> extras/net/tcp.m     |  4 ++--<br>
>> extras/net/types.m   | 13 +++++++++----<br>
>> 4 files changed, 23 insertions(+), 11 deletions(-)<br>
>><br>
>> diff --git a/extras/net/netdb.m b/extras/net/netdb.m<br>
>> index 8021d7e..fe5ab15 100644<br>
>> --- a/extras/net/netdb.m<br>
>> +++ b/extras/net/netdb.m<br>
>> @@ -82,7 +82,12 @@<br>
>><br>
>> :- pragma foreign_decl("C",<br>
>> "<br>
>> -#include <netdb.h><br>
>> +#ifdef MR_WIN32<br>
>> +    #include <winsock2.h><br>
>> +    #include <ws2tcpip.h><br>
><br>
> You need to do:<br>
><br>
>    #include ""mercury_windows.h""<br>
><br>
> *before* you include winsock2.h etc there.  Doing so ensures that the<br>
> macros that prevent the automatic inclusion of winsock.h (which will<br>
> conflict with winsock2.h) are defined.  (See comments in<br>
> runtime/mercury_windows.h.)<br>
><br>
> And indeed everywhere else stuff from the Windows API is #included.<br>
><br>
<br>
</div></div>Thanks Julien.<br>
<br>
I just started getting errors because of this when compiling an application<br>
against this library (but not the library itself).  I've fixed it in my<br>
workspace but I'm still getting the errors. </blockquote><div><br></div><div>I suspect the errors you are getting are what mercury_windows.h was intended to</div><div>avoid -- we had similar issues with the networking code in G12, which was why</div><div>I added that header in the first place.</div><div><br></div><div>Cheers,</div><div>Julien.</div></div></div></div>