Compare commits

..

46 Commits

Author SHA1 Message Date
54ad35d346 creating branch to fix intrusive for Sun CC (#3339)
[SVN r55764]
2009-08-24 17:08:35 +00:00
81c7876588 Copyrights on CMakeLists.txt to keep them from clogging up the inspect
reports.  This is essentially the same commit as r55095 on the release
branch.



[SVN r55159]
2009-07-26 00:49:56 +00:00
2020d39e2c Fix a typo.
[SVN r54909]
2009-07-12 15:53:54 +00:00
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
ae534d7342 Fix Boost.Function unit tests for C++0x. Fixes #3012
Based on a patch from Richard Webb. Changed a bit so that it also
works for the Visual C++ 10 beta.

[SVN r54618]
2009-07-03 22:21:40 +00:00
e8247198fa Add 'and later versions' to support info for GCC and Visual C++. Fixes #2847.
I didn't explicitly specify the versions since no one's updating this
list and it's highly unlikely that a future version will break this. The
same could probably be done for the other compilers but I don't know
them very well so I'm leaving them alone.

[SVN r54617]
2009-07-03 22:20:52 +00:00
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
68128bfffa Make Boost.Function compile with disabled exceptions.
Closes #2900. Patch from Gabi Davar.


[SVN r53722]
2009-06-07 15:44:50 +00:00
e10f4eaef9 Add missing #pragma warning(pop). Fixes #2767.
[SVN r53694]
2009-06-06 15:31:47 +00:00
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
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
678fb133f0 Add PDF generation options to fix external links to point to the web site.
Added a few more Boostbook based libs that were missed first time around.
Fixed PDF naming issues.

[SVN r51284]
2009-02-17 10:05:58 +00:00
821e6d34dd Fix -Wundef warning and suspect usage of BOOST_STRICT_CONFIG.
[SVN r50064]
2008-12-02 10:10:46 +00:00
529dc74954 Updating dependency information for modularized libraries.
[SVN r49628]
2008-11-07 17:05:27 +00:00
e8504c1777 Updating CMake files to latest trunk. Added dependency information for regression tests and a few new macros for internal use.
[SVN r49627]
2008-11-07 17:02:56 +00:00
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
f559986ae8 Continuing merge of CMake build system files into trunk with the encouragement of Doug Gregor
[SVN r49510]
2008-11-01 13:15:41 +00:00
8ca7384121 Fix Boost.Function thread safety issue again
[SVN r49326]
2008-10-14 15:31:57 +00:00
75890fea53 CodeGear C++ fix, from Nicola Musatti. Fixes #2325
[SVN r48922]
2008-09-23 00:26:21 +00:00
da259e8dce Make MyLargeFunctor large.
[SVN r48633]
2008-09-06 16:30:58 +00:00
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
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
ea18f5777b Add Boost.Typeof support to Boost.Function. Fixes #1621
[SVN r48616]
2008-09-05 16:13:49 +00:00
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
e3dfa7268a Add forward-declaration header for Boost.Function. Fixes #1668
[SVN r48613]
2008-09-05 14:55:34 +00:00
bacb5d6752 Attempt to work around problem with allocator casts in Boost.Function
[SVN r46446]
2008-06-17 13:59:04 +00:00
04040ae566 Improve documentation on the size/efficiency of boost::function objects
[SVN r44852]
2008-04-28 14:11:46 +00:00
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
0936dbdd03 Add missing include for is_void
[SVN r44030]
2008-04-04 12:26:53 +00:00
adb7b0a214 Change Boost.Function allocator behavior, from Emil Dotchevski
[SVN r43884]
2008-03-27 19:44:37 +00:00
cead36cd5b Disable more Visual C++ warnings in Function headers. Fixes #1416
[SVN r41798]
2007-12-06 18:39:06 +00:00
81e558491b Merge lots of copyrights
[SVN r40811]
2007-11-05 21:22:29 +00:00
2378ba59e7 Fix for Borland compilers.
[SVN r39657]
2007-10-02 17:41:35 +00:00
53b95c386d Finalizes the fix to Bug #1260, making vtable_base an actual POD type (oops)
and playing more nicely with reinterpret_cast (thanks to Brad King for the
fixes).



[SVN r39285]
2007-09-14 21:05:46 +00:00
3312c7ffcd function_template.hpp:
- Pass-by-reference internally, when we can. Fixes #1067



[SVN r39244]
2007-09-13 19:06:53 +00:00
de27ae9697 function/function_base.hpp, function/function_template.hpp:
- Switch from dynamic initialization of the vtable pointer to static
    initialization (Fixes #1260)
  - Handle member pointers properly, only using mem_fn within the invoker
    to deal with all of the messy bits of calling member pointers



[SVN r39240]
2007-09-13 17:38:58 +00:00
a7b9940f15 Handle GCC's -fno-exceptions properly. Fixes #1198
[SVN r39061]
2007-08-29 19:06:11 +00:00
e4f165a4e8 Disable MSVC warning about native code generation. Fixes #1163
[SVN r39060]
2007-08-29 18:59:16 +00:00
80a3f47099 Committed patch to eliminate warnings with GCC's -Wundef. Fixes #1197
[SVN r38827]
2007-08-21 15:35:19 +00:00
2a85edbd31 Remove V1 Jamfiles
[SVN r38516]
2007-08-08 19:02:26 +00:00
5c514ebe35 Try to work around EC++4 bug
[SVN r37471]
2007-04-18 12:13:53 +00:00
6a3f0df553 Add copyright, license
[SVN r35905]
2006-11-07 19:11:57 +00:00
64c8d10fa8 Eliminate MSVC 8.0 warning
[SVN r35588]
2006-10-13 14:29:56 +00:00
a2a810d2c1 Put back #include <functional> in case functionN.hpp is used directly
[SVN r34519]
2006-07-12 22:12:01 +00:00
d84481361f TR1 cyclic dependency fixes.
[SVN r34499]
2006-07-10 13:17:41 +00:00
872f12efee TR1 conformance: derive from unary_function/binary_function
[SVN r34481]
2006-07-08 18:07:33 +00:00
4 changed files with 66 additions and 0 deletions

28
CMakeLists.txt Normal file
View File

@ -0,0 +1,28 @@
#
# Copyright Troy D. Straszheim
#
# Distributed under the Boost Software License, Version 1.0.
# See http://www.boost.org/LICENSE_1_0.txt
#
#----------------------------------------------------------------------------
# This file was automatically generated from the original CMakeLists.txt file
# Add a variable to hold the headers for the library
set (lib_headers
function.hpp
function
)
# Add a library target to the build system
boost_library_project(
function
# SRCDIRS
TESTDIRS test
HEADERS ${lib_headers}
DOCDIRS doc
# DESCRIPTION
MODULARIZED
# AUTHORS
# MAINTAINERS
)

8
doc/CMakeLists.txt Normal file
View File

@ -0,0 +1,8 @@
#
# Copyright Troy D. Straszheim
#
# Distributed under the Boost Software License, Version 1.0.
# See http://www.boost.org/LICENSE_1_0.txt
#
boost_add_documentation(function.xml
faq.xml history.xml misc.xml reference.xml tests.xml tutorial.xml)

1
module.cmake Normal file
View File

@ -0,0 +1 @@
boost_module(function DEPENDS detail preprocessor utility)

29
test/CMakeLists.txt Normal file
View File

@ -0,0 +1,29 @@
#
# Copyright Troy D. Straszheim
#
# Distributed under the Boost Software License, Version 1.0.
# See http://www.boost.org/LICENSE_1_0.txt
#
boost_additional_test_dependencies(function BOOST_DEPENDS test lambda)
boost_test_run(lib_function_test function_test.cpp)
boost_test_run(function_n_test)
boost_test_run(allocator_test)
boost_test_run(stateless_test)
boost_test_run(lambda_test)
boost_test_compile_fail(function_test_fail1)
boost_test_compile_fail(function_test_fail2)
boost_test_compile(function_30)
boost_test_run(function_arith_cxx98)
boost_test_run(function_arith_portable)
boost_test_run(sum_avg_cxx98)
boost_test_run(sum_avg_portable)
boost_test_run(mem_fun_cxx98)
boost_test_run(mem_fun_portable)
boost_test_run(std_bind_cxx98)
boost_test_run(std_bind_portable)
boost_test_run(function_ref_cxx98)
boost_test_run(function_ref_portable)
boost_test_run(contains_test)
boost_test_run(contains2_test)