]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[4243] Addressed review comments
authorThomas Markwalder <tmark@isc.org>
Mon, 4 Apr 2016 19:32:57 +0000 (15:32 -0400)
committerThomas Markwalder <tmark@isc.org>
Mon, 4 Apr 2016 19:32:57 +0000 (15:32 -0400)
src/lib/asiolink/Makefile.am
    added asio_wrapper.h to list of sources

src/lib/asiolink/asio_wrapper.h
    updated commentary to include GNU/Boost bugs and
    added prominent warning comment

src/lib/asiolink/Makefile.am
src/lib/asiolink/asio_wrapper.h

index cdc0b3df37c82cf5bf372bfed969a4fb703cfc4f..806aef7c0f96a1c295cda9ed9d887ff288078959 100644 (file)
@@ -18,6 +18,7 @@ lib_LTLIBRARIES = libkea-asiolink.la
 libkea_asiolink_la_LDFLAGS = -no-undefined -version-info 2:0:0
 
 libkea_asiolink_la_SOURCES  = asiolink.h
+libkea_asiolink_la_SOURCES += asio_wrapper.h
 libkea_asiolink_la_SOURCES += dummy_io_cb.h
 libkea_asiolink_la_SOURCES += interval_timer.cc interval_timer.h
 libkea_asiolink_la_SOURCES += io_address.cc io_address.h
index fad21bfbcde1efe551f412b9a8c49c0256fa1d02..09f64a92de4eaae6ff3bb96802e9e762190252ec 100644 (file)
@@ -6,14 +6,20 @@
 #ifndef ASIO_WRAPPER_H
 #define ASIO_WRAPPER_H 1
 
+// !!! IMPORTANT !!!!
+// This file must be included anywhere one would normally have included
+// boost/asio.hpp.  Until the issue described below is resolved in some
+// other fashion  asio.hpp should not be included other than through
+// this file.
+//
 // The optimizer as of gcc 5.2.0, may not reliably ensure a single value
 // returned by boost::system::system_category() within a translation unit
 // when building the header only version of the boost error handling.
-// See Trac #4309 for more details. For now we turn off optimization for
+// See Trac #4243 for more details. For now we turn off optimization for
 // header only builds the under the suspect GCC versions.
 //
 // The issue arises from in-lining the above function, which returns a
-// reference to a local static variable, system_category_const,  This leads
+// reference to a local static variable, system_category_const.  This leads
 // to situations where a construct such as the following:
 //
 // {{{
 // We're doing the test here, rather than in configure to guard against the
 // user supplying the header only flag via environment variables.
 //
+// We opened bugs with GNU and BOOST:
+//
+// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69789
+// https://svn.boost.org/trac/boost/ticket/11989
+//
 // @todo Currently, 5.3.0 is the latest released versio of GCC. Version 6.0 is
 // in development and will need to be tested.