Commit Graph

32 Commits

Author SHA1 Message Date
Glen Fernandes
4ff15aed8c Remove dependency on MPL 2018-09-22 22:21:23 -04:00
Glen Fernandes
999d0a055b Use enable_if from TypeTraits 2018-09-22 22:21:18 -04:00
Glen Fernandes
a89010c21a Include workaround from Config 2018-09-22 22:21:13 -04:00
Glen Fernandes
21651923a6 Fix include guard identifier 2018-09-22 22:21:08 -04:00
Daniela Engert
1250a91b2e enable use of msvc compiler option /permissive-
With the updated Boost.Typeof library capable of handling /permissive, the typeof workaround for msvc in Boost.Scope_Exit is no longer required. Even worse, the workaround code causes compile errors.

Signed-off-by: Daniela Engert <dani@ngrt.de>
2017-04-14 19:17:04 +02:00
Lorenzo Caminiti
7d3c471a15 Removed dependency of ScopeExit on LocalFunction (by duplicating some utiliy LocalFunction macros in the ScopeExit header). 2014-09-28 14:08:15 -07:00
Stephen Kelly
054fd93485 ScopeExit: Remove obsolete MSVC version check.
[SVN r86032]
2013-09-30 00:20:00 +00:00
Marshall Clow
9a3563c142 Removed usage of deprecated macros in Boost.ScopeExit
[SVN r81573]
2012-11-26 20:23:34 +00:00
Lorenzo Caminiti
61614a7e41 Using lower case section IDs. Renamed TPL_ID to ID_TPL.
[SVN r78228]
2012-04-28 01:55:09 +00:00
Lorenzo Caminiti
533742b584 Hopefully worked around an Intel compiler bug (internal error) when deducing local function result type (used same Intel workaround that ScopeExit uses to deduced capture types).
[SVN r78214]
2012-04-27 01:46:22 +00:00
Lorenzo Caminiti
0fccce1bb1 Using MSVC typeof(this) workaround on all MSVC revs.
[SVN r77981]
2012-04-14 22:02:13 +00:00
Lorenzo Caminiti
fc27afc2dd Fixed a bug in same_line test and upd docs.
[SVN r77886]
2012-04-10 15:22:06 +00:00
Lorenzo Caminiti
2f41350375 Final (?) updated of ScopeExit docs.
[SVN r77861]
2012-04-09 20:32:17 +00:00
Lorenzo Caminiti
5979a072c3 Extended ScopeExit MSVC workaround to do typedef typeof(this) ... to work also in type-of emulation mode.
[SVN r77762]
2012-04-04 18:11:54 +00:00
Lorenzo Caminiti
a2ba828277 Not added SCOPE_EXIT_ALL_TPL but SCOPE_EXIT_ALL can capture this_ only on C++11 compilers that allow typename in templates (not MVSC10) -- all SCOPE_EXTIA_ALL can always capture the object using this instead of this_ and SCOPE_EXIT can always capture this_ even when implemented using C++11 lambdas because there is already a SCOPE_EXIT_TPL.
[SVN r77748]
2012-04-03 20:16:03 +00:00
Lorenzo Caminiti
bbc5b4ec92 Fixed a bug with _ALL on MSVC.
[SVN r77697]
2012-04-01 19:57:23 +00:00
Lorenzo Caminiti
57b43c4464 I think I fixed a bug in ScopeExit that caused not to use typename prefix on non-variadic compilers when capturing this (e.g., on Intel compilers). I don't have such a compiler so I need to check the regression tests to verify the fix...
Also using MPL_ASSERT to improve compiler error messages when trying to capture this on MSVC in type-of emulation mode (which doesn't work because of a MSVC bug).

[SVN r77565]
2012-03-26 18:26:30 +00:00
Lorenzo Caminiti
d57263204c Added #error to tests and examples that require variadic macros and/or lambda functions for better error reporting.
Split all sequence syntax with forced no-variadic tests and examples (..._nova) in their own separate file (to avoid macro redefinition warning on compilers within variadic macros).
Updated docs.

[SVN r77546]
2012-03-25 20:05:38 +00:00
Lorenzo Caminiti
59cf49476e Fixed a bug in deducing this type on MSVC when using lambda implementation for SCOPE_EXIT_ALL (I was missing a typename).
[SVN r77488]
2012-03-22 21:39:49 +00:00
Lorenzo Caminiti
15c7db9c2d Fixed type capture for this via this_ for scope exit lambda implementation (disabled by default).
[SVN r77421]
2012-03-19 21:43:15 +00:00
Lorenzo Caminiti
11238c4196 Added _ID macro to LocalFunction and corrected code doc typo in ScopeExit.
[SVN r77406]
2012-03-19 17:09:34 +00:00
Lorenzo Caminiti
7ac325cf4d Fixed a bug that on MSVC did not expand () around this when constructing params struct with only 1 capture for this_.
Workaround MSVC PP problem in dealing with empty params by trailing EMPTY as in `BOOST_PP_IS_EMPTY(ty BOOST_PP_EMPTY())`.

[SVN r77398]
2012-03-19 00:14:52 +00:00
Lorenzo Caminiti
cfefb68957 Fixed a bug in capturing this_ that caused ScopeExit tests to fail with an internal error on old GCCs for templates (now this type is deduced within a struct like all other type captures to workaround this). Added a test for this case (..._this_tpl.cpp).
Fixed a bug that omitted `= {}` when this_ was the only ScopeExit captured variable (now generating `= {}` even when only this_ is captured).
Fixed LocalFunction to work with the above ScopeExit fixes (some of which required changes to ScopeExit protected macro interface).

[SVN r77389]
2012-03-18 21:53:39 +00:00
Lorenzo Caminiti
af73df65c0 Using MSVC typeof(this) workaround on all MSVC version not just 8.0 because trunk regression tests shown this MSVC bug (which raises error C2355) was not fixed in 9 and later version as originally thought.
[SVN r77336]
2012-03-14 18:28:49 +00:00
Lorenzo Caminiti
2f3dee02af Fixed a bug that was not defining SCOPE_EXIT_ALL when BOOST_NO_VARIADIC_MACROS is defined (because of a typo, SOPE_EXIT_AUX_LAMBDAS was used instead of SCOPE_EXIT_LAMBDAS_01).
[SVN r77086]
2012-02-21 02:21:51 +00:00
Lorenzo Caminiti
09cc9ca357 Fixed a bug in BOOST_LOCAL_FUNCTION_DETAIL_PP_VOID_LIST: a typo VOId -> VOID.
Fixed a bug in scope_exit.hpp: An extra trailing \ in a macro definition (compiled only when BOOST_NO_VARIADIC_MACROS is defined).
Renamed LocalFunction and ScopeExit tests and examples from _err to _error.
Updated LocalFunction docs.

[SVN r77042]
2012-02-16 18:24:34 +00:00
Lorenzo Caminiti
ee5afa259e Committing ScopeExit improvements: variadic macro syntax (with full backward compatibility to pp-seq), capture this, capture nothing (void), and C++11 extensions.
[SVN r77026]
2012-02-15 00:44:45 +00:00
Alexander Nasonov
1707a6ea06 Use C++-0X lambdas when they are available.
[SVN r75550]
2011-11-19 12:21:36 +00:00
Alexander Nasonov
6ae137ab10 Get rid of "comparisons like X<=Y<=Z do not have their mathematical meaning" gcc warning, based on the patch from Kim Barrett.
[SVN r56073]
2009-09-06 23:17:53 +00:00
Alexander Nasonov
d02f0da0cb Replace PP_SEQ with PP_TUPLE to make msvc happy
[SVN r50679]
2009-01-19 22:34:21 +00:00
Alexander Nasonov
cba353b207 Fixes for ScopeExit.
[SVN r50650]
2009-01-17 12:17:27 +00:00
Alexander Nasonov
910681a539 Initial commit of ScopeExit.
[SVN r50620]
2009-01-16 00:02:37 +00:00