Commit Graph

195 Commits

Author SHA1 Message Date
Peter Dimov c326d30f28 Remove std::unary/binary_function use, they have been removed in C++17 2016-11-06 14:43:42 +02:00
Andrey Semashev 54988e8e91 Changed implementation to avoid calculating the size of the raw data buffer manually. Trim trailing spaces. 2016-04-02 17:31:22 +03:00
Andrey Semashev bde64bf9eb Fix gcc 6 warnings about invoking placement new on a buffer of insufficient size. 2016-04-02 14:59:57 +03:00
Marshall Clow 3eb8954877 Merge pull request #7 from apolukhin/develop
Use Boost.TypeIndex to work with type_info to avoid bunch of ...
2015-07-22 10:53:33 -07:00
Edward Diener 0c467707d9 Remove Borland workaround for obsolete and untested compiler/version. 2015-04-27 14:43:49 -04:00
Edward Diener f0ec326eb0 Use ! operator directly rather than boost::mpl::not with Boost supported compilers. 2015-04-27 04:15:31 -04:00
Antony Polukhin 8998778f51 Use Boost.TypeIndex to work with type_info to avoid bunch of workarounds and non-optimal operators. Added RTTI-off tests 2015-04-25 17:45:13 +03:00
Marcel Raad 73e4d02b00 Qualify enable_if with namespace boost
Unfortunately the change from enable_if_c to enable_if in 74c9cc9680 broke a lot of other libraries' regression tests on MSVC, which complains about ambiguous symbols.
2015-04-03 08:55:01 +02:00
Edward Diener 8cc1be159b Removed unnecessary header file include 2015-04-02 07:15:26 -04:00
Edward Diener 74c9cc9680 Remove dependency on deprecated type_traits headers. 2015-03-30 01:47:08 -04:00
Peter Dimov 854f2e8d5d Fix ambiguous 'detail' errors under msvc-8.0. 2015-01-16 21:54:16 +02:00
Antony Polukhin df1db75294 Less includes from Boost.Move and more tests 2014-10-02 15:40:33 +04:00
Antony Polukhin 27e9e1e372 Add support for function signatures with rvalue params 2014-09-29 20:14:06 +04:00
Marshall Clow 9f06e35e8d Add coverity comments to silence Coverity warnings 2014-01-31 19:50:02 -08:00
Marshall Clow 250655ad6d Add 'std:' qualification to size_t. Fixes Bug #6184 2014-01-31 19:42:29 -08:00
Stephen Kelly ea19e9e745 Remove remaining occurances of BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
These evaded scripting.

[SVN r86249]
2013-10-11 23:22:36 +00:00
Stephen Kelly 8d5a27fb85 Function: Remove obsolete GCC version check.
[SVN r86111]
2013-10-01 08:46:26 +00:00
Stephen Kelly 8760088d44 Function: Remove obsolete MSVC version checks.
[SVN r86018]
2013-09-30 00:16:55 +00:00
Marshall Clow 95a1956397 Added missing 'std::'; Refs #7819
[SVN r82273]
2012-12-29 16:36:12 +00:00
Marshall Clow 9e30736439 Updated to use new macro names
[SVN r81450]
2012-11-21 01:49:52 +00:00
Antony Polukhin 419f424959 Add move assignment and move constructors to Boost.Function (refs #7330)
[SVN r80552]
2012-09-17 04:08:18 +00:00
Marshall Clow 775213a9e6 Remove extraneous semicolon
[SVN r74916]
2011-10-11 15:23:29 +00:00
Marshall Clow cbb9e7c4da Applied patch from #4717
[SVN r72316]
2011-05-31 21:12:35 +00:00
Steven Watanabe 8cde82a568 Remove extra definition of operator(), since it's inline anyway. Fixes #4765.
[SVN r67560]
2011-01-02 05:13:03 +00:00
Steven Watanabe c0d4005441 Make sure that the cv flags are copied when we copy a reference to a function object. Fixes #4325
[SVN r62665]
2010-06-09 15:40:48 +00:00
Jeremiah Willcock 6902f6f943 Applied patch from #4073; fixes #4073
[SVN r62623]
2010-06-09 00:51:41 +00:00
Jeremiah Willcock 820ad024fe Applied patch from #3618; fixes #3618
[SVN r62621]
2010-06-09 00:47:51 +00:00
Jeremiah Willcock 2e19728cdb Removed all but one old-style cast, breaking GCC 2.95.3; fixes #3410
[SVN r62614]
2010-06-08 23:55:25 +00:00
Jeremiah Willcock de3b8e7451 Fixed tab and no-newline-at-end-of-file issues from inspection report
[SVN r61435]
2010-04-20 17:54:16 +00:00
Peter Dimov 22c6592a40 Fix function_base.hpp to not require typeid. Refs #3666. Requires [58127].
[SVN r58128]
2009-12-03 20:59:32 +00:00
Daniel James 8b63c146ea Work around Visual C++ copy constructor bug. Fixes #2929.
Based on the patch by Steven Watanabe.

[SVN r54619]
2009-07-03 22:22:03 +00:00
Daniel James ff3244d562 When copying boost::ref, copy even when the referenced function is empty. Fixes #2642
Patch by Steven Watanabe

[SVN r54616]
2009-07-03 22:20:26 +00:00
Vladimir Prus 68128bfffa Make Boost.Function compile with disabled exceptions.
Closes #2900. Patch from Gabi Davar.


[SVN r53722]
2009-06-07 15:44:50 +00:00
Daniel James e10f4eaef9 Add missing #pragma warning(pop). Fixes #2767.
[SVN r53694]
2009-06-06 15:31:47 +00:00
Douglas Gregor a74e72cce9 Make Boost.Function compile under BOOST_NO_EXCEPTIONS.
Fixes #2499
Fixes #2494
Fixes #2469
Fixes #2466


[SVN r51745]
2009-03-13 05:49:02 +00:00
Douglas Gregor 6f8ec5c8c5 Implement an optimization that David Abrahams and myself came up with,
where Boost.Function uses a bit in the vtable pointer to indicate when
the target function object has a trivial copy constructor, trivial
destructor, and fits within the small object buffer. In this case, we
just copy the bits of the function object rather than performing an
indirect call to the manager.

This results in a 60% speedup on a micro-benchmark that copies and
calls such function objects repeatedly.



[SVN r51743]
2009-03-13 05:23:53 +00:00
John Maddock 821e6d34dd Fix -Wundef warning and suspect usage of BOOST_STRICT_CONFIG.
[SVN r50064]
2008-12-02 10:10:46 +00:00
K. Noel Belcourt 07800455a8 Both Sun and Pgi on Linux correctly put typeinfo into the std
namespace, but function_base keys off the
BOOST_NO_EXCEPTION_STD_NAMESPACE macro instead of the
BOOST_NO_STD_TYPEINFO macro.  The attached patch changes
function_base to use the typeinfo macro.  Because eVC 4.2 doesn't
put typeinfo into the std namespace, I need to define
BOOST_NO_STD_TYPEINFO only for this eVC version.



[SVN r49571]
2008-11-03 18:37:49 +00:00
Douglas Gregor 8ca7384121 Fix Boost.Function thread safety issue again
[SVN r49326]
2008-10-14 15:31:57 +00:00
Douglas Gregor 75890fea53 CodeGear C++ fix, from Nicola Musatti. Fixes #2325
[SVN r48922]
2008-09-23 00:26:21 +00:00
Douglas Gregor 2fe4cc253f Fix double-destruction problem with small function objects and swap(), and try to work around a GCC 4.2 issue. See #1910 for comments about the former problem from Niels Dekker.
[SVN r48627]
2008-09-06 03:16:25 +00:00
Douglas Gregor f379ef8532 Make Boost.Function's target() operation respect the cv-qualifiers of referenced function objects. Fixes #736
[SVN r48618]
2008-09-05 17:52:12 +00:00
Douglas Gregor ea18f5777b Add Boost.Typeof support to Boost.Function. Fixes #1621
[SVN r48616]
2008-09-05 16:13:49 +00:00
Douglas Gregor d5a86a2d52 Improve the performance of Boost.Function's swap. Thanks to Niels Dekker for the original patch. Fixes #1910
[SVN r48615]
2008-09-05 15:43:22 +00:00
Douglas Gregor e3dfa7268a Add forward-declaration header for Boost.Function. Fixes #1668
[SVN r48613]
2008-09-05 14:55:34 +00:00
Douglas Gregor bacb5d6752 Attempt to work around problem with allocator casts in Boost.Function
[SVN r46446]
2008-06-17 13:59:04 +00:00
John Maddock fe2d04e954 Change <functional> include so that it still works when Boost.TR1 is in the include path.
[SVN r44506]
2008-04-17 15:49:39 +00:00
Douglas Gregor 0936dbdd03 Add missing include for is_void
[SVN r44030]
2008-04-04 12:26:53 +00:00
Douglas Gregor adb7b0a214 Change Boost.Function allocator behavior, from Emil Dotchevski
[SVN r43884]
2008-03-27 19:44:37 +00:00
Douglas Gregor cead36cd5b Disable more Visual C++ warnings in Function headers. Fixes #1416
[SVN r41798]
2007-12-06 18:39:06 +00:00