Opened 12 years ago

Closed 12 years ago

#4491 closed Bugs (fixed)

asio : WinError.h case incorrect ?

Reported by: Jérôme Carretero <cJ-boost@…> Owned by: chris_kohlhoff
Milestone: Boost 1.44.0 Component: asio
Version: Boost Development Trunk Severity: Problem
Keywords: Cc:

Description

On my Linux system, I'm cross-compiling for windows. The w32api provides lower case header files, I think it's a standard for windows headers.

Here's a working patch :

diff --git a/boost/asio/error.hpp b/boost/asio/error.hpp index 5663b69..69a8a24 100644 --- a/boost/asio/error.hpp +++ b/boost/asio/error.hpp @@ -19,7 +19,7 @@

#include <boost/cerrno.hpp> #include <boost/system/error_code.hpp>

#if defined(BOOST_WINDOWS)
defined(CYGWIN)

-# include <WinError.h> +# include <winerror.h>

#else # include <cerrno> # include <netdb.h>

Change History (3)

comment:1 by chris_kohlhoff, 12 years ago

In my opinion this is really a MinGW bug. Lower-case is not a standard for windows headers and MSDN does document mixed case header names.

 Directory of C:\Program Files\Microsoft SDKs\Windows\v7.0\Include

14/07/2009  07:53 PM         1,052,826 WinError.h
               1 File(s)      1,052,826 bytes

Of course, this is a straightforward change to asio so I will just go ahead and fix it. However, do feel free to take up the issue with MinGW as it would improve that compiler's ability to handle valid Windows programs :)

comment:2 by chris_kohlhoff, 12 years ago

(In [66006]) Use lower-case to keep MinGW cross-compilers happy. Refs #4491.

comment:3 by chris_kohlhoff, 12 years ago

Resolution: fixed
Status: newclosed

(In [66037]) Merge from trunk.

........

r65998 | chris_kohlhoff | 2010-10-16 15:30:12 +1100 (Sat, 16 Oct 2010) | 2 lines

Make unit tests build faster.

........

r66002 | chris_kohlhoff | 2010-10-16 16:13:46 +1100 (Sat, 16 Oct 2010) | 2 lines

Add a test case for bug where a deadline timer never fires if the io_service is run in a background thread. N.B. fails only on platforms that use kqueue. Fixes #4568.

........

r66004 | chris_kohlhoff | 2010-10-16 16:43:03 +1100 (Sat, 16 Oct 2010) | 2 lines

Fix the way the kqueue_reactor is interrupted when a new timer is scheduled. Fixes #4568.

........

r66005 | chris_kohlhoff | 2010-10-16 17:27:45 +1100 (Sat, 16 Oct 2010) | 2 lines

Fix a const-correctness issue that prevents valid uses of has_service<> from compiling. Fixes #4638.

........

r66006 | chris_kohlhoff | 2010-10-16 18:06:18 +1100 (Sat, 16 Oct 2010) | 2 lines

Use lower-case to keep MinGW cross-compilers happy. Fixes #4491.

........

r66007 | chris_kohlhoff | 2010-10-16 18:24:47 +1100 (Sat, 16 Oct 2010) | 2 lines

Don't use deprecated system functions. Fixes #4672.

........

r66008 | chris_kohlhoff | 2010-10-16 20:47:11 +1100 (Sat, 16 Oct 2010) | 2 lines

Ensure close()/closesocket() failures are correctly propagated. Fixes #4573.

........

r66009 | chris_kohlhoff | 2010-10-16 21:01:14 +1100 (Sat, 16 Oct 2010) | 2 lines

Check return code of InitializeCriticalSectionAndSpinCount. Fixes #4574.

........

r66010 | chris_kohlhoff | 2010-10-16 22:04:08 +1100 (Sat, 16 Oct 2010) | 2 lines

Add support for hardware flow control on QNX. Fixes #4625.

........

r66014 | chris_kohlhoff | 2010-10-16 22:39:13 +1100 (Sat, 16 Oct 2010) | 2 lines

Always use pselect() on HP-UX, if it is available. Fixes #4578.

........

r66017 | chris_kohlhoff | 2010-10-16 23:23:56 +1100 (Sat, 16 Oct 2010) | 2 lines

Ensure handler arguments are passed as lvalues. Fixes #4744.

........

r66018 | chris_kohlhoff | 2010-10-16 23:39:06 +1100 (Sat, 16 Oct 2010) | 2 lines

Fix Windows build when thread support is disabled. Fixes #4680.

........

r66020 | chris_kohlhoff | 2010-10-16 23:59:29 +1100 (Sat, 16 Oct 2010) | 3 lines

Timers with expiry times set more than 5 minutes in the future need the waitable timer to be periodic. Fixes #4745.

........

r66035 | chris_kohlhoff | 2010-10-17 22:33:28 +1100 (Sun, 17 Oct 2010) | 2 lines

Version bump.

........

Note: See TracTickets for help on using tickets.