Martin Hořeňovský
e8ec6bd73c
General cleanup for C++11
...
Also less allocations and less stack usage on the fatal condition path
2017-08-31 11:46:37 +02:00
Martin Hořeňovský
bcb430b837
Clean up various minor things
2017-08-29 14:02:14 +02:00
Phil Nash
8c95a81448
Removed all (well, most) of the redundant, ResultBuilder-based, code
2017-08-09 09:08:33 +01:00
Phil Nash
f247ce5bff
First cut of new AssertionHandler/ Decomposer
...
- integrated into INTERNAL_CATCH_TEST. Needs more work to fully replace existing stuff
2017-08-08 17:53:01 +01:00
Phil Nash
f8148ebae1
Made macroName and capturedExpression StringRefs
2017-08-08 01:22:21 +01:00
Phil Nash
59f9bcf1ed
Reduced AssertionInfo to a pure record type
2017-08-08 01:08:07 +01:00
Phil Nash
5e60050299
Removed default ctors for AssertionInfo, AssertionResult and SourceLineInfo
2017-08-08 01:02:24 +01:00
Martin Hořeňovský
87a66b8479
Address results of PVS-Studio static analysis
...
Couple are left un-addressed, see #958 for details.
2017-07-20 00:27:28 +02:00
Martin Hořeňovský
4a1e898eae
More method bodies moved out of line
2017-07-19 15:32:58 +02:00
Martin Hořeňovský
fc32165d48
Started work on splitting out .cpp files from header files
2017-07-06 22:28:42 +02:00
Martin Hořeňovský
fae0fa4ec1
Merge branch 'dev-second-string-argument-removal' into dev-modernize
...
It is no longer true that an assertion macro has either 1 or 2 args,
so...
2017-06-26 20:48:41 +02:00
Martin Hořeňovský
c5bac73cad
Merge branch 'master' into dev-modernize
...
This includes the performance commits done recently
2017-06-26 19:08:42 +02:00
Martin Hořeňovský
0eb101e165
Remove "second argument" from result builder and assertion result
...
This is not quite complete removal (it doesn't pass approval tests),
but it should be representative of full perf improvements from doing so
2017-06-22 18:13:05 +02:00
Neal Coombes
dcab8a5971
Performance improvement in AssertionInfo.
...
By using char const * instead of std::string we avoid significant
copying per assertion. In a simple loop with 10000000 CHECKS on
my system, this reduces the run time from 9.8s to 6s.
2017-06-22 18:03:47 +02:00
Martin Hořeňovský
7f6773bb4d
Merge branch 'master' into dev-modernize
...
Hopefully nothing went too wrong.
2017-06-05 17:19:42 +02:00
Martin Hořeňovský
377c9a746d
Cosmetic fixes (whitespace and spelling)
2017-05-27 14:42:54 +02:00
Phil Nash
e749724a11
A load more C++11 tweaks - mostly moving initialisations from constructors to inline
2017-04-25 19:30:53 +01:00
Martin Hořeňovský
71df66365e
Gutted catch_compiler_capabilities
...
All C++11 toggles are now removed. What is left is either platform
specific (POSIX_SIGNALS, WINDOWS_SEH), or possibly still needed
(USE_COUNTER).
If current CLion is compatible with `__COUNTER__`, then we should also
force `__COUNTER__` usage.
Changed
* CATCH_AUTO_PTR -> std::unique_ptr
* CATCH_OVERRIDE -> override
* CATCH_NULL -> nullptr
* CATCH_NOEXCEPT -> noexcept
* CATCH_NOEXCEPT_IS -> noexcept
Removed
* CATCH_CONFIG_CPP11_UNIQUE_PTR
* CATCH_CONFIG_CPP11_SHUFFLE
* CATCH_CONFIG_CPP11_TYPE_TRAITS
* CATCH_CONFIG_CPP11_OVERRIDE
* CATCH_CONFIG_CPP11_LONG_LONG
* CATCH_CONFIG_CPP11_TUPLE
* CATCH_CONFIG_CPP11_IS_ENUM
* CATCH_CONFIG_CPP11_GENERATED_METHODS
* CATCH_CONFIG_CPP11_NOEXCEPT
* CATCH_CONFIG_CPP11_NULLPTR
* CATCH_CONFIG_VARIADIC_MACROS
2017-04-25 12:43:19 +02:00
philsquared
ca66dd243c
Added a couple more unimplemented assignment operators to silence VS2013 warnings
2017-02-21 09:10:44 +00:00
Phil Nash
2b74613c54
Revert "First cut of Evaluate refactoring to remove int specialisations, among other things"
...
This reverts commit 39753558eb
.
2017-02-06 22:37:23 +00:00
Phil Nash
39753558eb
First cut of Evaluate refactoring to remove int specialisations, among other things
2017-02-06 15:15:43 +00:00
Mickey Rose
a1e9b841ff
lazily stringify expressions
2017-01-14 21:56:16 +01:00
Phil Nash
e86daf8bdd
Reorganised C+11 feature detection a bit
...
and added CATCH_CONFIG_CPP11_NULLPTR for VS2015
2015-05-19 22:31:57 +01:00
gnzlbg
ce6598599b
Conditionally removes usage of deprecated features
...
-add macros to test for C++ version and features
to catch_compiler_capabilities.hpp
- replaces dynamic exception specifications (deprecated)
with noexcept in C++ Version >= 11
- defines defaulted copy constructor/move constructors/assignment
in C++ Version >= 11 since their implicit generation is deprecated
under some circumstances.
- fixes #259
2014-03-20 14:03:51 +01:00
Phil Nash
f3d1f08c3b
Removed all trailing whitespace
...
- addresses #105
2013-07-03 19:14:59 +01:00
Phil Nash
d4305377b7
Fixed inconsistency in reporting of _FALSE (negated) expressions
2013-05-17 19:35:33 +01:00
Phil Nash
2a9d8d9e36
Changed "const X ref"s to "X const ref"s
...
- Brought older code up to current convention (with the help of a Python script)
2013-04-23 18:58:56 +01:00
Phil Nash
d539da9030
Implemented CHECK_NO_FAIL
2012-11-13 09:44:52 +00:00
Phil Nash
81cb69ef18
AssertionInfo captures more info (for test cases and sections)
2012-11-04 21:09:22 +00:00
Phil Nash
e04e74f896
More AssertionResult refactoring
2012-10-24 21:59:47 +01:00
Phil Nash
c96f9330a0
Collect assertion info up front
2012-10-17 08:14:22 +01:00
Phil Nash
a5fa78284d
ResultData -> AssertionResultData
2012-10-16 08:33:13 +01:00
Phil Nash
c597a893fa
ResultInfo -> AssertionResult filenames and variables
2012-10-16 08:31:05 +01:00