Commit Graph

288 Commits

Author SHA1 Message Date
Antony Polukhin
afd1b6cdc8
Merge pull request #28 from Breakthrough/develop
Add CTTI name prettifying for GHS C++ compiler.
2019-03-02 11:33:11 +03:00
Brandon Castellano
d69a8a211b
Add CTTI name prettifying for GHS C++ compiler. 2019-02-28 12:33:14 -05:00
Antony Polukhin
ebe74ba4ba
Merge pull request #27 from Mike-Devel/min_cmake
[CMake] Add minimal cmake file
2019-02-20 21:27:23 -10:00
Mike Dev
ac4fec435f [CMake] Add minimal cmake support
CMake file only supports add_subdirectory workflow.
No installation and no unit tests.
2019-02-14 17:32:53 +01:00
Antony Polukhin
f68d6dc073 update copyrights 2019-01-17 22:45:35 +03:00
Antony Polukhin
85f43ece0d Merge remote-tracking branch 'lastique/optimize_ctti_strcmp' into develop 2018-12-23 12:24:16 +03:00
Antony Polukhin
a2de6a56f3
Merge pull request #26 from boostorg/feature/ci-update
CI update: Better CI with many new platforms
2018-12-16 20:15:14 +03:00
Antony Polukhin
c585d74669 Disable part of the tests for _MSC_VER == 1916 and below 2018-12-16 11:55:04 +03:00
Antony Polukhin
32909cb25a fixes for tests 2018-12-16 11:30:59 +03:00
Antony Polukhin
7af1661709 Fixes for travis CI 2018-12-15 22:06:18 +03:00
Antony Polukhin
351cedf404 ADjust sanitizers in CI builds 2018-12-15 21:26:25 +03:00
Antony Polukhin
098c84481e Merge branch 'develop' into feature/ci-update 2018-12-15 16:33:40 +03:00
Antony Polukhin
d9d13b9574 ci update 2018-12-14 11:56:02 +03:00
Antony Polukhin
44ca756e32
Merge pull request #25 from boostorg/pr/ctti-clang-win
Fix compile_time_type_info for clang-cl
2018-11-16 11:15:15 +03:00
Peter Dimov
acb536a67e Fix compile_time_type_info for clang-cl 2018-11-16 02:06:10 +02:00
Antony Polukhin
7654c26594
Increase MSVC requirements for constexpr sorted test (refs #24) 2018-11-16 01:58:18 +03:00
Antony Polukhin
075b3682ae
Disable constexpr sort test for MSVC <= 1914 (refs #24) 2018-11-15 21:58:17 +03:00
Antony Polukhin
a60e25a74d
Better diagnostics for missing PRETTY_FUNCTION macro (refs #24) 2018-11-14 09:09:37 +03:00
Andrey Semashev
cd1c905f87 Optimize string comparison used to implement CTTI comparison.
When the strings are known to be runtime objects, use compiler builtin
for strcmp for comparing strings. The compiler will generate a runtime
call for the (presumably, well-optimized) strcmp instead of rolling
a local per-character comparison loop. When the builtin is not available
or we cannot detect compile-time strings, use the local loop as before.

Also, when C++14 constexpr is not available, use strcmp right away,
since there is no use for the local loop in this case.
2018-10-28 02:56:30 +03:00
Antony Polukhin
f3da852bca
Update stl_type_index.hpp 2018-10-20 20:19:04 +03:00
Antony Polukhin
a8fafd93f9
Merge pull request #21 from Kojoley/do-not-include-container-hash-if-possible
Do not include container_hash if possible
2018-10-20 20:12:07 +03:00
Nikita Kniazev
01944bf377 Do not include container_hash if possible
The `boost/container_hash/hash.hpp` has significant inclusion times.
Not including it results in 30% faster `boost/type_traits.hpp` parsing.
(kind of regression introduced in 82ed016577)
2018-10-20 19:59:20 +03:00
Antony Polukhin
09f0bc23c5 fix b2 warnings 2018-09-22 22:13:42 +03:00
Glen Fernandes
718af3e8dc Fix tests which did not return report_errors() 2018-09-17 07:43:19 -04:00
Antony Polukhin
c9c1412a05 Tests to reproduce the track issue 13621 2018-07-28 17:44:17 +03:00
Antony Polukhin
c2caa340ab
Merge pull request #19 from jlapolla-cray/edg-ctti-support
CTTI parameters for EDG based compilers
2018-04-15 12:48:26 +03:00
Justin LaPolla
da0a181117 ctti parameters for EDG based compilers
- Needed for Cray Compiling Environment to work with Boost.TypeIndex.
2018-04-10 09:19:22 -05:00
Antony Polukhin
be9f5a4b9b Droped dependency on MPL 2018-03-24 09:50:37 +03:00
Antony Polukhin
bd19ed1a87 Disable link-fail tests and restore MinGW CI 2018-01-23 10:40:56 +03:00
Antony Polukhin
727cdadc86 Restore link-fail 2018-01-16 01:21:20 +03:00
Antony Polukhin
5bc4f54183 Dropped -fail to check the MSVC builds 2018-01-16 01:10:28 +03:00
Antony Polukhin
918e59c109 One more fix in tests for /GR- flag 2018-01-16 00:44:11 +03:00
Antony Polukhin
cd659212aa Workaround for /GR- override in tests 2018-01-16 00:28:48 +03:00
Antony Polukhin
70e51a62e9
Workaround for /GR- override that disables link time assertions 2018-01-15 23:21:34 +03:00
Antony Polukhin
05feacf14b Relax comparing_anonymous_types_between_modules test as it was failing to too many builds (fixes #17) 2018-01-15 00:14:47 +03:00
Antony Polukhin
82ed016577 Use hash_fwd header and use new paths to boost::hash* 2018-01-14 23:41:33 +03:00
Antony Polukhin
1a7226bc0f Do not define BOOST_TEST_*E macros, as they are now defined in boost/core/lightweight_test.hpp 2017-10-01 22:30:59 +03:00
Antony Polukhin
be08eda196 Do not suppress already suppressed warnings 2017-09-26 22:05:57 +03:00
Antony Polukhin
baa5019c90 Merge pull request #16 from bebuch/develop
fix ctti_type_index for GCC 7
2017-07-29 20:13:04 +03:00
Benjamin Buch
4585bab3c3 __PRETTY_FUNCTION__ is slightly different in GCC 7
The output of an unsigned int literal dosn't contain the u anymore.

	#include <iostream>

	template < typename T >
	struct ctti{
		template < unsigned int D = 1 >
		static constexpr auto name()noexcept{
			return __PRETTY_FUNCTION__;
		}
	};

	int main(){
		using ctti = ctti< int >;
		std::cout << ctti::name() << '\n';
	}
2017-07-28 15:07:19 +02:00
Antony Polukhin
93e7b2458b Fixed some warnings 2017-06-25 14:05:08 +03:00
Daniela Engert
09ac338acc Fix compiler warnings about unused initialized variables, and unused formal parameters
Signed-off-by: Daniela Engert <dani@ngrt.de>
2017-06-08 19:05:02 +02:00
Antony Polukhin
b0737f4169 Fix formatting in README 2017-05-18 22:51:47 +03:00
Antony Polukhin
be74716251 Use native hash_code() when possible on GCC-like compilers 2017-05-18 22:50:25 +03:00
Antony Polukhin
f82eab8882 Merge pull request #15 from ecatmur/ecatmur-stl-hash
Include <boost/functional/hash.hpp> if required
2017-05-06 10:26:30 +03:00
Antony Polukhin
af61d6b8ed Merge pull request #13 from cdglove/split_register_and_implement
Add support for using runtime_cast without requiring type_id_runtime.
2017-02-28 05:33:07 +04:00
Chris Glover
d3d4e8d18a Change runtime cast test to use the separated macro (BOOST_TYPE_INDEX_IMPLEMENT_RUNTIME_CAST) and add a new test that ensures BOOST_TYPE_INDEX_REGISTER_RUNTIME_CLASS does indeed supply both functions. 2017-02-25 15:35:34 -05:00
Chris Glover
7f8af2a6e9 Merge branch 'develop' into split_register_and_implement 2017-02-25 13:19:16 -05:00
Antony Polukhin
342d835289 Run MinGW tests too (thanks to Pavel Filinov for showing that appveyor apability) 2017-02-23 21:35:40 +03:00
Edward Catmur
5cacb67510 Make it derived class responsibility to include <boost/functional/hash.hpp> 2017-02-16 21:55:12 +00:00