Commit Graph

411 Commits

Author SHA1 Message Date
Peter Dimov
e919b652af Disable __VA_OPT__ on g++ 8/9 in c++2a mode, as vaopt.cpp fails 2022-08-16 19:09:04 +03:00
Edward Diener
aa8f347df2 Treat nvcc compiling in cuda mode with _MSC_VER defined as if it is the VC++ default preprocessor as far as variadic macro support is concerned. 2021-02-11 23:38:30 -05:00
Edward Diener
7bed5072e4 Update on config.hpp so we are not redefining a defined macro. 2020-09-22 00:30:33 -04:00
Edward Diener
5fd12d32d4 Assume variadic macro support. 2020-09-17 18:25:36 -04:00
Edward Diener
fe22f14954 Fixed check by not omitting the 0 check. 2020-09-04 17:38:08 -04:00
Edward Diener
322e4266fb Reinstalled Intel on Windows fix fgor 17.0 on up. 2020-09-02 04:14:49 -04:00
Edward Diener
1ace1d3806 Fixed syntax error of a missing #endif 2020-09-01 21:08:13 -04:00
Edward Diener
ed066d3c81 Further separation to strict and non-strict implementations in variadic implementations. 2020-09-01 19:31:41 -04:00
Edward Diener
96e994a25a Further separation to strict and non-strict implementations in tuple implementations. 2020-09-01 19:19:23 -04:00
Edward Diener
ac553f44fb Further separation to strict and non-strict implementations in seq implementations. 2020-09-01 16:03:28 -04:00
Edward Diener
b93e99332b Further separation to strict and non-strict implementations in logical and repetition implementations. 2020-09-01 08:30:03 -04:00
Edward Diener
001d109eab Further separation to strict and non-strict implementations in list implementations. 2020-09-01 02:50:29 -04:00
Edward Diener
fedfdc2f32 Further separation to strict and non-strict implementations. 2020-09-01 00:35:19 -04:00
Edward Diener
775f9eb24e Further separation to strict and non-strict implementations. 2020-08-31 21:08:44 -04:00
Edward Diener
9b8138324f Changed separation to strict and non-strict implementations and include only the header files needed by either. 2020-08-31 16:51:00 -04:00
Edward Diener
158fc13f01 Changed separation to strict and non-strict implementations and include only the header files needed by either. 2020-08-31 16:38:03 -04:00
Edward Diener
721ef44e79 Revert arithmetic changes to original for msvc default preprocessor. 2020-08-31 10:55:17 -04:00
Edward Diener
c1eb9292d7 Removed BOOST_PP_CAT workaround for Intel compiler on Windows for version 18.0 and above, as it was causing a failure in preprocessor tests. 2020-08-30 15:07:31 -04:00
Edward Diener
5c83504677 Merge branch 'develop' into expand_number
# Conflicts:
#	include/boost/preprocessor/variadic/size.hpp
#	test/seq.cxx
#	test/variadic.cxx
2020-08-27 00:46:34 -04:00
Edward Diener
661aa5c36e Cleanmer variadic size implementation. 2020-08-26 21:49:21 -04:00
Edward Diener
a9ed92efbd Updates for empty variadic data. 2020-08-26 17:47:07 -04:00
Edward Diener
5d70c1fc7b Corrected limit. Added BOOST_PP_IS_STANDARD macro. Updated variadic tests. 2020-08-23 20:08:38 -04:00
Edward Diener
1cf82f9928 Separate variadic and tuple limits so that variadic limits can be greater. 2020-08-17 21:22:13 -04:00
Edward Diener
59cdb3e5db Updated limits and corrected deduce_r. 2020-08-16 11:20:25 -04:00
Edward Diener
44a4e07994 Fix non-variadic tuple elem access. 2020-08-13 01:38:33 -04:00
Edward Diener
3f43be5b55 Limited fold_left invocations. 2020-08-12 12:32:57 -04:00
Edward Diener
d86d461aa7 Corrected seq's fold_left. 2020-08-11 22:13:23 -04:00
Edward Diener
2fb4b3de1b Iteration limit to 1024. 2020-07-28 20:36:00 -04:00
Edward Diener
585fad5198 Fix dec limits. Allow 1024 in number and seq limits. 2020-07-28 01:39:40 -04:00
Edward Diener
21f796567e Add 1024 limit for all related number functionality 2020-07-27 20:59:29 -04:00
Edward Diener
905520aaf8 Added 1024 as maximum number 2020-07-27 07:54:05 -04:00
Edward Diener
aba61d6018 Rename to all lower case. 2020-07-14 17:52:41 -04:00
Edward Diener
572f3f4d4a Fixed syntax error. 2020-07-14 17:39:48 -04:00
Edward Diener
6272649c8f Allow macro to be passed only tuple, without the tuple size, when variadics are used. 2020-07-14 17:34:17 -04:00
Edward Diener
a03dd0419e Fix syntax error 2020-07-12 19:05:57 -04:00
Edward Diener
9ba4469131 Fixed size implementation. 2020-07-11 13:51:08 -04:00
Edward Diener
7e3516eb8f Revert "Revert to original size implementation now that 'while' has been expanded by one iteration."
This reverts commit 7e30c606b7.
2020-07-11 13:46:35 -04:00
Edward Diener
7e30c606b7 Revert to original size implementation now that 'while' has been expanded by one iteration. 2020-07-11 11:05:21 -04:00
Edward Diener
28a0c21651 Maximum for loop 2020-07-11 05:04:00 -04:00
Edward Diener
0fbfe9c981 Increased while loops by one to encompass maximum numbers. 2020-07-10 23:06:27 -04:00
Edward Diener
c8e005f696 Corrected fold_left to allow for maximum tests. 2020-07-10 12:19:38 -04:00
Edward Diener
74f652c85f Updated size. 2020-07-08 22:04:07 -04:00
Edward Diener
b9424eac02 Revert back to original reverse implementation 2020-07-07 20:23:58 -04:00
Edward Diener
0fd6b84304 Add extra iteration for fold_left and fold_right to cover maximum operations. 2020-07-07 19:13:05 -04:00
Edward Diener
db21240060 Split reverse for seq seize greater than 256 2020-07-05 13:13:06 -04:00
Edward Diener
14a263bf9d Updated to not do duplicate dec 2020-07-05 10:57:18 -04:00
Edward Diener
5e74d9f12e Added config.hpp back. 2020-07-02 12:13:22 -04:00
Edward Diener
1b5c17f75b Updated header includes 2020-07-02 11:36:36 -04:00
Edward Diener
15d0d66a75 Updated limit implementation. 2020-07-02 11:24:15 -04:00
Edward Diener
3ac4c915a3 In C++20 variadic data can be empty. This means that BOOST_PP_VARIADIC_SIZE now returns 0 for empty data instead of 1, and that conversions to and from empty variadic data and lists or arrays, which can be empty, work properly. 2020-06-29 21:57:23 -04:00