2
0
mirror of https://github.com/boostorg/variant.git synced 2026-01-19 04:42:16 +00:00
Commit Graph

689 Commits

Author SHA1 Message Date
Antony Polukhin
688a7db652 Merge pull request #87 from sdarwin/lcov
update lcov in .travis.yml
2021-01-03 12:49:52 +03:00
sdarwin
8da93b3259 update lcov in .travis.yml 2020-12-31 00:29:18 +00:00
Antony Polukhin
5e989572ae Merge pull request #83 from camolezi/camolezi-missing-include
Added missing <tuple> include
boost-1.75.0.beta1 boost-1.75.0 boost-1.74.0
2020-07-29 19:17:54 +03:00
Lucas Camolezi
b948c1a486 Added missing <tuple> include
This makes the header able to be built standalone, making possible C++ clang modules builds.
2020-07-24 11:03:10 -03:00
Antony Polukhin
03035b2f6b Fix wrong usage of boost::move (fixes #53, #82) 2020-07-23 15:28:07 +03:00
Antony Polukhin
5bd7870560 Merge pull request #81 from vgvassilev/patch-1
Add missing include
2020-07-19 10:43:24 +03:00
Vassil Vassilev
9bd4ae5684 Add missing include
Allow header file to be built standalone, in a clang C++ modules context.
2020-07-19 02:45:36 +03:00
Antony Polukhin
619d3dcc0f Merge pull request #80 from Lastique/fix_deprecated_headers
Update header locations to avoid warnings about using deprecated headers
boost-1.74.0.beta1
2020-05-13 12:55:30 +03:00
Andrey Semashev
351b812267 Updated header locations to avoid warnings about using deprecated headers.
The warnings are generated by no_exceptions_support.hpp. While at it, this
commit also updates locations of several other headers that were moved and
don't generate warnings (yet).

Deprecated headers will be removed in a future release.
2020-05-11 17:28:26 +03:00
Antony Polukhin
2605aa4bff Apply BOOST_OVERRIDE to boost::bad_get::what() and boost::bad_visit::what() (fixes #78) 2020-05-05 20:22:58 +03:00
Antony Polukhin
167b5ff373 Merge pull request #79 from eldiener/develop
Changes for Embarcadero C++ clang-based compilers, targeting Boost 1.74
2020-05-02 07:54:57 +03:00
Edward Diener
1fa5aa0e0a Merge branch 'develop' of https://github.com/eldiener/variant into cppbuilder 2020-04-08 20:45:11 -04:00
Antony Polukhin
5cbe9b7e19 CI fixes boost-1.73.0 2020-04-06 11:45:47 +03:00
Antony Polukhin
38bc003df0 Update .travis.yml 2020-04-06 01:41:02 +03:00
Antony Polukhin
a816eb6202 Diagnose CI issue 2020-04-05 16:12:51 +03:00
Antony Polukhin
1ba33a580e Merge pull request #77 from BartSiwek/fix_zero_as_null_pointer_constant
Fix GCC zero-as-null-pointer-constat warnings
2020-04-03 13:35:51 +03:00
Edward Diener
a3f266706b Change __BORLANDC__ to BOOST_BORLANDC, which is defined in Boost config for the Embarcadero non-clang-based compilers. 2020-03-31 22:52:39 -04:00
Bart Siwek
74a9d7691c Fix GCC zero-as-null-pointer-constat warnings 2020-03-28 11:42:56 +01:00
Antony Polukhin
bee77d42a8 update copyright year boost-1.73.0.beta1 2020-01-11 19:35:53 +03:00
Antony Polukhin
206d1d2bb2 Merge pull request #74 from Kojoley/remove-unused-includes
Remove unused includes
2019-12-02 07:21:33 +03:00
Nikita Kniazev
93c21189e6 Remove unused includes 2019-12-01 19:06:41 +03:00
Antony Polukhin
c401edba70 fix typos 2019-06-28 22:44:06 +03:00
Antony Polukhin
f34376e115 Merge pull request #66 from Kojoley/partly-mitigate-bad-clang-inlining-decision
Partly mitigate bad Clang inlining decision
boost-1.72.0.beta1 boost-1.72.0 boost-1.71.0.beta1 boost-1.71.0
2019-05-09 10:01:59 +03:00
Antony Polukhin
15a846fba0 CI fixes 2019-05-02 10:45:09 +03:00
Antony Polukhin
8f52f879b5 CI scripts update to deal with container changes 2019-05-02 10:44:06 +03:00
Antony Polukhin
3ed28d2cc5 Merge pull request #71 from boostorg/antoshkka/revert-recursive-move
Revert "Merge pull request #59 from Kojoley/recursive_wrapper-move-co…
2019-05-02 10:32:31 +03:00
Antony Polukhin
b18c22a8ff Revert "Merge pull request #59 from Kojoley/recursive_wrapper-move-constructor-pointer-stealing"
This reverts commit dcbfeb9892, reversing
changes made to 055487c5bb.

Reverts adding a pointer stealing to the recursive_wrapper.
2019-05-01 20:57:40 +03:00
Antony Polukhin
0e122c38fe Merge pull request #67 from HDembinski/fix_warning
fix for unused argument warning
2019-04-23 08:56:28 +03:00
Antony Polukhin
31ed2a3b70 Merge pull request #68 from ecatmur/apply-visitor-copy-cv-ref
Copy variant cvref when determining result type
2019-04-23 08:55:00 +03:00
Ed Catmur
7331d648f4 Add test. 2019-04-21 00:50:00 +01:00
Ed Catmur
2e32903579 Merge remote-tracking branch 'origin/develop' into apply-visitor-copy-cv-ref 2019-04-20 22:22:12 +01:00
Antony Polukhin
5be655d46f Update appveyor.yml 2019-04-17 21:23:36 +03:00
Edward Catmur
cbdb354a27 Copy variant cvref when determining result type
Ensures that we can e.g. call apply_visitor on a lvalue variant
2019-04-17 15:05:37 +01:00
Antony Polukhin
b1d66215e1 Update appveyor.yml 2019-04-14 21:58:31 +03:00
Hans Dembinski
66ef97f655 fix_warning 2019-04-14 14:02:19 +02:00
Nikita Kniazev
dd9b0c9b84 Partly mitigate bad Clang inlining decision
Because a visitor is wrapped several times during visitation it cases extra
temporaries usage and useless store and loads that can only be optimized if
the `visitation_impl` is inlined into the function that creates the wrapper.
Clang inliner decides not to inline functions even with small-sized switches,
resulting in a poor visitation code. Forceinline mark on those internal functions perceptibly improves the situation, though does not mitigate it
completely.

LLVM ticket https://bugs.llvm.org/show_bug.cgi?id=41491
2019-04-14 04:26:31 +03:00
Antony Polukhin
74ea828cde Merge pull request #65 from boostorg/feature/std-hash
Add std::hash specialization for variant (refs #49)
2019-04-12 10:55:46 +03:00
Antony Polukhin
7cc18f356c Merge pull request #63 from Kojoley/do-not-call-abort
Do not call abort in forced_return
2019-04-12 10:54:17 +03:00
Antony Polukhin
dcbfeb9892 Merge pull request #59 from Kojoley/recursive_wrapper-move-constructor-pointer-stealing
recursive_wrapper move constructor pointer stealing
2019-04-12 10:52:35 +03:00
Antony Polukhin
055487c5bb Avoid git clone issues 2019-04-02 09:23:59 +03:00
Antony Polukhin
31dcc43faf Add std::hash specialization for variant (refs #49) 2019-04-01 23:45:21 +03:00
Antony Polukhin
c80759d265 Merge pull request #64 from Kojoley/suppress-warnings-in-tests
Suppress warnings in tests
2019-03-27 10:19:55 +03:00
Nikita Kniazev
e20f5eb7b8 Suppress warnings in tests 2019-03-26 17:43:32 +03:00
Nikita Kniazev
3cc73fe162 Do not call abort in forced_return
Reduces code bloating on Clang and MSVC, saves a branch on GCC.
2019-03-26 04:46:43 +03:00
Antony Polukhin
7ecf721f2b Merge pull request #62 from gjasny/static-visitor-public-dtor
static_visitor: Make destructor public
boost-1.70.0
2019-03-16 17:59:28 +03:00
Antony Polukhin
90e7fbae48 Merge pull request #61 from Mike-Devel/min_cmake
[CMake] Add minimal cmake support
2019-03-09 21:57:30 +03:00
Gregor Jasny
dd728220b0 static_visitor: Make destructor public
otherwise in C++ 17 mode Clang 8 will complain about the
protected destructor:

```
main.cpp:16:33: error: temporary of type 'boost::static_visitor<>' has protected destructor
    boost::apply_visitor(output{}, v);
                                ^
/usr/local/opt/boost/include/boost/variant/static_visitor.hpp:53:5: note: declared protected here
    ~static_visitor() = default;
    ^
```

See also discussion in https://reviews.llvm.org/D53860
2019-03-09 15:25:03 +01:00
Mike Dev
98e2674467 [CMake] Add minimal cmake support
- CMake file only supports add_subdirectory workflow.
- Provides target Boost::variant, but
  no installation and no unit tests
2019-03-08 16:23:41 +01:00
Nikita Kniazev
5c10399096 Added note about pointer stealing to never-empty guarantee design docs 2019-03-04 01:49:35 +03:00
Nikita Kniazev
11d03f3b51 Added macro to docs 2019-02-24 03:42:11 +03:00