Opened 12 years ago

Closed 12 years ago

#4638 closed Bugs (fixed)

Compile error using boost::asio::has_service()

Reported by: Peter Sturm <peter.sturm@…> Owned by: chris_kohlhoff
Milestone: To Be Determined Component: asio
Version: Boost 1.44.0 Severity: Problem
Keywords: has_service init_key Cc:

Description

Using the template function boost::asio::has_service() leads to compiler error "const ... discards qualifiers" with gcc 4.2.1 and MSVS 2008.

Problem:

has_service() is defined as const, but calls non const members init_key()

Possible solution:

make init_key() a const member. Files affected:

boost/asio/detail/service_registry.hpp boost/asio/detail/impl/service_registry.hpp boost/asio/detail/impl/service_registry.ipp

Change History (3)

comment:1 by chris_kohlhoff, 12 years ago

Severity: ShowstopperProblem

comment:2 by chris_kohlhoff, 12 years ago

(In [66005]) Fix a const-correctness issue that prevents valid uses of has_service<> from compiling. Refs #4638.

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.