Antony Polukhin
4fec53f3db
update copyright years
2021-01-03 13:57:41 +03:00
Julien DELACROIX
e130cd860c
boost::polymorphic_downcast only supports raw pointer cast, which is a gap compared to static_cast.
...
To make it clear:
Base* base = new Base();
static_cast<Derived*>(base) ===> OK
static_cast<Derived&>(*base) ===> OK
boost::polymorphic_downcast<Derived*>(base) ===> OK
boost::polymorphic_downcast<Derived&>(*base) ===> IMPOSSIBLE
boost::polymorphic_downcast being a kind of "debug-safe version" of
static_cast, it should provide the same capabilities.
This patch extend boost::polymorphic_downcast to support references just
like static_cast does.
This is achieved by introducing a partial specialization for references.
Unit tests have been updated accordingly.
2019-12-09 08:51:10 +01:00
Antony Polukhin
441d4e4e1b
Update appveyor.yml
2019-04-24 22:10:38 +03:00
Antony Polukhin
56393150bb
update ci
2018-12-14 11:53:39 +03:00
Antony Polukhin
29997a9fe1
Fix warning
...
`warning: catching polymorphic type ???class std::bad_cast??? by value`
2018-10-03 20:33:30 +03:00
Antony Polukhin
2a0a2a59f5
Fixed formatting in README and updated the AppveyorCI script
2017-05-20 10:42:53 +03:00
Antony Polukhin
c704762482
Run MinGW tests too (thanks to Pavel Filinov for showing that appveyor apability)
2017-02-23 21:21:50 +03:00
Mike Maximoff
181eb0e6fc
boost::assertion_failed trapped assertions, and subsequent bad casts were executed anyway. Now it throws exceptions for assert-like behavior.
2016-12-16 10:46:37 +03:00
Antony Polukhin
4d814efd3f
Update CI scripts, add appveyor CI
2016-12-04 02:35:42 +03:00
Antony Polukhin
da8b2fe695
Fix file permissions
2015-12-30 00:08:28 +03:00
Antony Polukhin
a7b9f42b9a
Use lightweight_test.hpp instead of asserts in tests
2015-12-30 00:07:48 +03:00
Antony Polukhin
b6e9403ef0
Fixed warnings in tests
2015-12-14 19:14:28 +03:00
Antony Polukhin
8f4b6ec985
Fixed issue from track Ticket #11209 : conversion - cast_test leaks memory
2015-09-25 19:58:48 +03:00
Alex Henrie
43ee183296
Correct spelling of "suppress"
2015-01-30 15:22:27 -07:00
Antony Polukhin
00b6a53f7e
Add polymorphic_pointer_cast
2014-11-10 15:02:20 +04:00
Antony Polukhin
6199649ae2
Move polymorphic_pointer_downcast to a separate header, use pragma once and boost::throw_exception
2014-11-10 14:24:39 +04:00
Boris Rasin
582fc91adb
add more tests and documentation example for polymorphic_pointer_downcast
2014-11-09 15:37:56 +02:00
Boris Rasin
6a224fa5e9
=add polymorphic_pointer_downcast function template
2014-11-09 00:02:44 +02:00
Antony Polukhin
ff7ea09a73
remove numeric_cast_test that is a copy of numeric/conversion/test/numeric_cast_test.cpp
2014-06-11 16:23:51 +04:00
Antony Polukhin
6943537150
Drop dependency to the boost_unit_test_framework library in tests
2014-06-11 16:16:40 +04:00
Peter Dimov
df57f25807
Remove unnecessary includes from cast_test.cpp.
2014-06-11 14:41:55 +03:00
Peter Dimov
f0caf56d0b
Remove unnecessary includes from implicit_cast_fail.cpp.
2014-06-11 14:40:50 +03:00
Peter Dimov
8a03282736
Add additional tests.
2014-06-11 14:35:27 +03:00
Antony Polukhin
a0922ab598
Remove lexical_cast, add polymorphic_cast.hpp, minor fixes
2014-06-09 12:36:42 +04:00
Antony Polukhin
d1a51b897d
Fix conversions to bool with leading zeros (refs #9659 )
2014-03-05 14:48:21 +04:00
Antony Polukhin
1e65265b8f
Minor fixes in tests
2014-02-11 12:13:17 +04:00
Antony Polukhin
1707131ac3
Added some tests for try_lexical_convert and fixed some issues.
2014-01-01 21:47:09 +04:00
Antony Polukhin
b40bc02f94
try_lexical_cast is now implemented in optimal way
2013-12-13 13:52:18 +04:00
Antony Polukhin
57e4e87e3b
Put tests to test folder, remove unrequired files, fix permissions
2013-12-09 11:27:27 +04:00
Antony Polukhin
c0c02e560e
Attempt to catch libc++ bug with a modified tests
...
[SVN r86747]
2013-11-18 08:17:33 +00:00
Antony Polukhin
bbd746d2ac
Slightly modify one of the lexical_cast tests to see what is produced by the to_str method with libc++.
...
[SVN r86721]
2013-11-16 16:25:26 +00:00
Antony Polukhin
c2c4b884fe
Make a separate folder for lexical_casts examples, use those examples in documenation and assure that they successfully build and run (refs #9046 )
...
[SVN r85828]
2013-09-22 12:23:26 +00:00
Antony Polukhin
6f656adea3
Do not treat long long warnings as errors in lexical_cast + containers tests ( fixes #9061 )
...
[SVN r85684]
2013-09-15 19:33:17 +00:00
Antony Polukhin
3ce36a2848
Get rid of some macro, improve type traits, fix svn properties, do not supress warnings (refs #9046 )
...
[SVN r85475]
2013-08-26 11:18:42 +00:00
Antony Polukhin
d723c18fff
Update explicit failures markup and lexical_cast_float_types_test.cpp: do not run some checks when libc++ is used, but do expect other checks to pass well.
...
[SVN r85322]
2013-08-12 16:06:59 +00:00
Antony Polukhin
6bd8edfa02
Do not treat critcal errors as bad_lexical_cast exceptions, but if exceptions are on throw correct exception instead (refs #8966 )
...
[SVN r85232]
2013-08-07 11:08:01 +00:00
Antony Polukhin
5f44bdcae8
Fix warnings in lexical_cast found by Boost Inspection program (copyrights restored according to svn history, license text replaced with license name and link to it)
...
[SVN r85149]
2013-07-24 08:46:08 +00:00
Antony Polukhin
a65fcf571f
Get rid of BOOST_LCAST_HAS_INT128 macro and use BOOST_HAS_INT128 instead (refs #8790 )
...
[SVN r85073]
2013-07-18 09:13:41 +00:00
Antony Polukhin
13d98f02d0
Fixed testing of 128bit integer types and added staic assert that cheks for std::numeric_limits specializations, if they are required for conversion (refs #8790 )
...
[SVN r85072]
2013-07-18 08:45:09 +00:00
Antony Polukhin
91aa2ce64d
Report more warnings while testing boost::lexical_cast. Some warnings suppressed
...
[SVN r85007]
2013-07-12 11:33:15 +00:00
Antony Polukhin
f7bd5e24c2
Fix macro for int128 detection (refs #8790 )
...
[SVN r84965]
2013-07-07 09:51:58 +00:00
Antony Polukhin
93a01eba32
Comment out two lexical_cast tests, not actual for C++11
...
[SVN r83894]
2013-04-14 07:53:45 +00:00
Antony Polukhin
12fd711cc8
Disable UTF16 and UTF32 tests for libc++ (refs #8369 )
...
[SVN r83717]
2013-04-02 19:56:49 +00:00
Antony Polukhin
1a0ffcadbf
Add tests for filesystem::path conversion (refs #7704 )
...
[SVN r83644]
2013-03-30 07:41:23 +00:00
Antony Polukhin
633b852b81
Update code that uses string buffers (refs #8267 ).
...
Treat cast to pointer as compile time error (refs #8334 ).
Update documentation
[SVN r83601]
2013-03-27 17:00:46 +00:00
Antony Polukhin
694f7b5033
Do not use long double type in lexical_cast for internal variables if Boost.Math has no functions for long double (refs #8162 )
...
Do not test lexical_cast on long doubles, if Boost.Math does not support long double
[SVN r83129]
2013-02-24 13:34:57 +00:00
Antony Polukhin
5c8c897d30
Fixed as many -Wconversion warnings in lexical cast and tests as possible (refs #2558 )
...
[SVN r82695]
2013-02-03 09:20:28 +00:00
Antony Polukhin
3e4a1669f1
More tests (refs #7814 )
...
[SVN r82694]
2013-02-03 07:38:56 +00:00
Antony Polukhin
47bef9517f
Attempt to add support for lexical conversions of int128 types (refs #7909 )
...
[SVN r82560]
2013-01-20 12:13:31 +00:00
Antony Polukhin
63b680c082
More strict tests, less workarounds, bugfixes (refs #7814 )
...
[SVN r82227]
2012-12-27 20:17:09 +00:00