Commit Graph

299 Commits

Author SHA1 Message Date
Frank Mori Hess
638da8018c Fix issue during invocation where tracked objects could be released
while holding the signal's mutex.
2019-05-10 12:40:22 -04:00
Mike Dev
12c0d4b183 Internalize ( a simplified version of ) scope_guard from Boost.MultiIndex 2019-03-25 15:52:56 +01:00
Marcel Raad
d8335ab45f
Fix -Wextra-semi clang warnings
Remove superfluous semicola.
2019-02-25 11:59:14 +01:00
CromwellEnage
dbee9ee2e7 Revert all but BOOST_PARAMETER_MAX_ARITY update and BOOST_SIGNALS2_NAMED_SIGNATURE_PARAMETER removal 2018-11-22 00:12:41 -05:00
CromwellEnage
64e721ae19 Fix boost/signals2/variadic_signal.hpp
Ensure that an additional reference-to-const connection is the first parameter to the boost::function return type of variadic_extended_signature at all times.
2018-11-19 22:30:58 -05:00
CromwellEnage
77e137811b Test function type template parameter support
<boost/signals2/variadic_signal.hpp>
* Add boost::signals2::detail::variadic_extended_signature template specializations for boost::function and std::function (when available).

<boost/signals2/signal_type.hpp>
* Leverage Boost.Parameter support for function type template parameters.

"test/signal_type_test.cpp"
* Remove BOOST_SIGNALS2_NAMED_SIGNATURE_PARAMETER preprocessor guard.

"test/Jamfile.v2"
* Define BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=0 where applicable to prevent ICE failures.
2018-11-17 15:41:31 -05:00
Frank Mori Hess
16e4359e01 Fix more compile errors caused by moving rtl_critical_section
into detail namespace.
2018-03-23 14:31:04 -04:00
Frank Mori Hess
a2436c44c4 Move details into detail namespace. 2018-03-23 13:49:05 -04:00
Frank Mori Hess
9e7a569921 Fix compile error. 2018-03-23 13:44:16 -04:00
Frank Mori Hess
6b57bea620 Try to fix windows compilation again: sync up with all changes
to boost/smart_ptr/detail/lwm_win32_cs.hpp.
2018-03-22 21:33:20 -04:00
Frank Mori Hess
be09b36c93 Revert "Fix compilation with BOOST_USE_WINDOWS_H"
This reverts commit 0325854810.
2018-03-22 21:29:36 -04:00
Marcel Raad
0325854810
Fix compilation with BOOST_USE_WINDOWS_H
Commit f801fa8f64 added explicit
namespace qualifications. This breaks compilation with
BOOST_USE_WINDOWS_H as the functions are in the global namespace then,
so revert that part again.
2018-03-20 09:13:11 +01:00
Tobias Kohlbau
f801fa8f64
Fix lwm_win32_cs.hpp for Clang
See 7ef8fa4a19.

Signed-off-by: Tobias Kohlbau <tobias@kohlbau.de>
2017-11-16 16:46:57 +01:00
Frank Mori Hess
3213593428 More -fno-exceptions fixes. 2017-07-28 12:11:37 -04:00
Frank Mori Hess
8793113c08 Add #include for throw_exception. 2017-07-27 12:32:53 -04:00
Frank Mori Hess
80c31a96e6 Fix compile with -fno-exceptions 2017-07-27 11:08:39 -04:00
Romain Geissler
50e31b3013 Fix maybe uninitialized warnings with gcc 7. 2017-06-21 23:26:32 +02:00
Wei-Ming Yang
925e0ebbf1 fix a mistake in detail::slot_call_iterator_t<>
This is the test code, http://cpp.sh/4wxy
I hope that can help to understand what I mean.
2016-11-18 06:40:43 +08:00
Frank Mori Hess
7266d35250 Stopped using std::unary_function and std::binary_function. 2016-11-09 18:08:11 -05:00
Frank Mori Hess
0fa11f5317 Merge pull request #17 from rick68/patch-3
fix a bug in boost::signals2::detail::operator<=()
2016-11-09 17:33:53 -05:00
Wei-Ming Yang
3cd0556b2e fix a bug in boost::signals2::detail::operator<=()
`l <= r` equals `!(l > r)`
2016-11-10 02:05:57 +08:00
Wei-Ming Yang
53fdefc345 fix a bug in auto_buffer<>::uninitialized_grow()
It's not growing capacity when we want more.
2016-11-09 18:42:41 +08:00
Wei-Ming Yang
73e2214055 fix a mistake in postconstructor_invoker<T>::postconstruct()
The variadic function template  `postconstructor_invoker<T>::postconstruct()` without const modifier.
2016-11-08 03:13:44 +08:00
Jared Grubb
e4ec44b04d Update slot_base.hpp 2016-10-01 15:00:17 -07:00
Jared Grubb
ef06d9858f slot_base.hpp: clang gives compiler errors due to bad expression
I am trying to update to boost-1.62 but am hitting compiler errors:

/usr/local/include/boost/signals2/slot_base.hpp:70:29: error: expected value in expression
    #if(!BOOST_NO_EXCEPTIONS)
                            ^
2016-10-01 14:55:34 -07:00
Frank Mori Hess
3b5dc7617d Removed dead code. 2016-06-10 15:20:53 -04:00
Frank Mori Hess
2537c3015c Fixed tracking of shared_ptr<const void> 2016-06-10 14:10:27 -04:00
Frank Mori Hess
95e2024143 Removed redundant asserts. 2016-05-15 00:09:51 -04:00
Frank Mori Hess
978551c2a1 More changes for compiling without exception support. 2016-04-30 17:10:34 -04:00
Daniel Welty
1d21fdc4c2 #11461: Enable some signals2 when exceptions disabled
This allows signals2 to be used when exception support is disabled by
removing certain functionality. If that functionality is used it should
give a compiliation error and can be fixed at that time or another
workaround used.

This gives a partial fix for issue 11461.

Change-Id: Ib619fdf7078de9936a5a9d825a6891f9cc383f6d
2016-04-29 16:39:21 -05:00
Frank Mori Hess
db0d3f55cc Pass tuple arg by reference through variadic_slot_invoker. Hopefully
will fix #12123 and #12110.
2016-04-22 01:25:12 -04:00
Joachim Faulhaber
f7bf739a37 Warning fixes: vc12 C400 warning; Unused parameter warnings. 2015-09-24 13:23:14 +02:00
Frank Mori Hess
45efa525ce Fixed -Wshadow warning (patch from ticket #11512) 2015-07-26 13:45:40 -04:00
Frank Mori Hess
e48547ba12 Merge branch 'develop' of https://github.com/boostorg/signals2 into develop 2015-07-21 11:24:28 -04:00
Frank Mori Hess
f5153734f0 Removed all usage of boost::throw_exception. 2015-07-21 11:21:08 -04:00
Kazutoshi SATODA
34c4d8d408 Remove unnecessary "extern" on some inline functions
There is an ancient compiler that (wrongly) rejects "etern inline".
http://am.renesas.com/products/tools/coding_tools/c_compilers_assemblers/sh_compiler/index.jsp

The removal is also good for consistency. There is no other occurrence
of "extern inline" throughout Boost source tree.
2015-07-18 02:08:48 +09:00
Marcel Raad
08f10f16ef Fix TryEnterCriticalSection return type
TryEnterCriticalSection returns a BOOL, which is a typedef for int.
2015-07-09 09:04:50 +02:00
Frank Mori Hess
79a8dc9e1d Fixed compile errors with reference slot return type, when
compiling in c++11 mode.
2015-04-12 22:53:46 -04:00
Frank Mori Hess
2659f70dff Fixed compile error in c++11 mode due to my last change. 2015-04-12 22:05:57 -04:00
Frank Mori Hess
c22312b86c Destroy user slots promptly after disconnection, and without
holding any signals2 mutexes.
2015-04-12 21:44:30 -04:00
Frank Mori Hess
a305f0b2c1 Got rid of per-connection mutexes. 2015-04-12 14:34:16 -04:00
Frank Mori Hess
22d870c3e8 Fix for signals returning a reference type. 2015-04-09 15:39:10 -04:00
Frank Mori Hess
18dfed8989 Fixed a parameter forwarding issue with bound_extended_slot_function
in c++98 mode.
2015-03-24 12:57:55 -04:00
Frank Mori Hess
fb8344aa09 Fixed forwarding issues with gcc 4.9 and later in c++11 mode. 2015-03-23 18:38:34 -04:00
Frank Mori Hess
9cf234651e Fixed forwarding issues with gcc 4.9 and later in c++11 mode. 2015-03-23 18:36:35 -04:00
Frank Mori Hess
0cc3f5aa12 Made internal invocation_janitor class noncopyable as suggested by
Eric Levin, to avoid compiler warnings on msvc.
2015-03-04 12:03:32 -05:00
Frank Mori Hess
fd0d8042e2 Fix for missing include from Evangelos Foutras. 2014-11-06 23:32:20 -05:00
Frank Mori Hess
da69ce807e Applied patch from Stefan Bühler from ticket #10721 2014-10-30 15:59:54 -04:00
Marcel Raad
af47b6d323 Remove unused include
This header file does not compile with clang-cl because of the try/catch, and it's not used anyway since 44f2fc27d8.
2014-09-26 11:22:38 +02:00
Frank Mori Hess
5430e17d63 Removed dead code which checked wrong #define 2014-09-10 12:22:37 -04:00