Commit Graph

329 Commits

Author SHA1 Message Date
Edward Diener
a6404a8fb2 Fixed __VA_OPT__ functionality for vc++ in c20 mode. 2019-11-12 14:57:09 -05:00
Edward Diener
732d00341f For the default VC++ preprocessor turn off __VA_OPT__ support in true c20 mode ( /Zc:__cplusplus ) as it can not handle it. 2019-11-12 10:31:24 -05:00
Edward Diener
4f4f04c56b Added va_opt.hpp to facilities header file. 2019-11-01 15:51:34 -04:00
Edward Diener
776037ae56 Corrected implementation and testing for BOOST_PP_VA_OPT 2019-10-31 06:07:10 -04:00
Edward Diener
4fe7807f79 Add BOOST_PP_VA_OPT implementation 2019-10-20 17:00:51 -04:00
Edward Diener
80107ea60a Changed opt to has_opt in header file and HTML 2019-10-19 10:51:40 -04:00
Edward Diener
1473215dc7 Changed name of macro from BOOST_PP_VARIADIC_OPT to BOOST_PP_VARIADIC_HAS_OPT 2019-10-19 05:49:13 -04:00
Edward Diener
88a0365f4d Added the BOOST_PP_CHECK_EMPTY macro and documentation. 2019-10-06 22:06:38 -04:00
Edward Diener
54669af127 Fixed macro testing for __VA_OPT__ support. 2019-09-27 22:15:18 -04:00
Edward Diener
4cce94a84e Segregate C20 macros code from other macros for BOOST_PP_IS_EMPTY 2019-09-27 09:44:15 -04:00
Edward Diener
2f9be1086a Less wasteful inclusion. 2019-09-26 16:07:03 -04:00
Edward Diener
684e9991ec Only include macro if allowable. 2019-09-26 15:05:17 -04:00
Edward Diener
0cdd09e6e1 Change to a less wasteful use of BOOST_PP_VARIADIC_OPT in BOOST_PP_IS_EMPTY code. 2019-09-26 00:43:46 -04:00
Edward Diener
22deb165b6 Documentation for variadic opt functionality. 2019-09-25 15:43:07 -04:00
Edward Diener
e476f10f52 Added OPT macro to determine whether C++20's __VA_OPT__ is supported or not. Updated the undocumented variadic IS_EMPTY to use the functionality of __VA_OPT__ if it exists to provide perfect functionality for testing for emptiness. 2019-09-25 06:29:04 -04:00
Edward Diener
c436de6142 Adjusted the configuration so that compiling a cuda source file ( .cu ) using clang does not set BOOST_PP_VARIADICS to 0. An 'explicit' test was also added for this situation. 2019-09-14 10:27:14 -04:00
Edward Diener
5756fb08ad Fixed inspect report problems: tabs and lack of copyright notices, and a few other small html file errors. 2019-08-27 01:29:21 -04:00
Edward Diener
adf2746626 Add support for vc++ /experimental:preprocessor mode. 2018-10-20 14:02:20 -04:00
Edward Diener
0e335df79e Test for stringize macro and use of variadic in stringize macro. 2018-10-16 16:37:10 -04:00
Edward Diener
b5c081bf7a Variadic macro support for the PGI compiler when EDG is being used with it. 2018-09-23 09:12:59 -04:00
Edward Diener
347f48afae Back out previous CUDA change to turn on variadic macro support for all situations when compiling a CUDA file. 2018-09-10 17:42:32 -04:00
Edward Diener
00b2f44624 Allow the IBM compiler to default to the level of C++/C compliance to determine default variadic macro support 2018-02-18 09:47:44 -05:00
Edward Diener
a329a67b47 NVidia compiler supports variadic macros. 2018-02-14 22:01:04 -05:00
Edward Diener
dfc1c46ece With _MSC_VER and __clang__ always use strict mode and variadics turned on without any VC++ fixes. 2017-03-26 08:51:41 -07:00
Edward Diener
e474eea44f Slight correction to particularize previous change as involving only -fno-ms-compatibility mode. 2017-03-26 01:02:05 -07:00
Edward Diener
b03c6cd3c0 In the configuration the combination of clang defined and gcc defined always gets strict mode and variadic macro support, even under Windows where VC++ may also be defined. 2017-03-25 23:22:32 -07:00
Edward Diener
dc41624aba Added Travis CI file. Updated config.hpp for Intel 17 on Windows. 2016-11-16 13:01:51 -05:00
Edward Diener
4ae346bbc5 Merge pull request #9 from sergiud/intel-17.0-fix
Intel C++ compiler 17.0 fix
2016-11-16 09:40:21 -05:00
Edward Diener
d922d757be Fix for VC++ and VC++ emuolations ot the SEQ_TO_LIST macro 2016-11-16 00:15:57 -05:00
Sergiu Deitsch
e1e3a2e21e added Intel C++ compiler 17.0 workaround 2016-11-11 15:30:21 +01:00
Edward Diener
ee73989a21 Further change to ensure that clang targeting VC++ behaves as the VC++ preprocessor 2016-03-30 13:52:02 -04:00
Edward Diener
7835ed019c Updated configuration to support clang targeting VC++ 2016-03-30 12:08:46 -04:00
Mathias Gaunard
f59d83b8bf lower version requirement for SunCC and variadics
Macro variadics appear to work fine with SunCC 5.12.
2015-10-08 11:31:27 +01:00
Edward Diener
735e301c46 Added BOOST_PP_IDENTITY_N functionality with test. 2015-09-12 19:53:59 -04:00
Edward Diener
3f97464c27 Added needed include. 2015-07-17 07:16:11 -04:00
Edward Diener
b125850bbb Fixes for BOOST_PP_SEQ_REMOVE when the seq is its maximum size and has its last element removed. Also updated seq tests. 2015-05-29 01:36:06 -04:00
Edward Diener
350c0e59b1 Add ned macro 2015-05-27 19:15:45 -04:00
Edward Diener
2612bf706c Corrected fix for the for_each problem when dealing with as much as 256 seq elements. 2015-05-27 19:13:22 -04:00
Edward Diener
b84235fcb7 Revert "Corrected fix for seq for each processing."
This reverts commit dc61cc1373.
2015-05-27 07:44:30 -04:00
Edward Diener
4aa8ae8a01 Disallow variadic macro support for versions below 12.4, since that is the first version with C++11 support. 2015-05-26 17:39:58 -04:00
Edward Diener
9044b17f18 For Oracle C++ do not automatically turn off variadic macro support for version 12.3 or higher, since those versions can support C++11. 2015-05-25 23:46:33 -04:00
Edward Diener
dc61cc1373 Corrected fix for seq for each processing. 2015-05-19 20:10:39 -04:00
Edward Diener
4c2c83f9f2 Backing out for_each and for_each_i changes. 2015-05-19 11:34:02 -04:00
Edward Diener
06c18a67f8 Fixed replace when replacing the last element of a 256 element sequence. 2015-05-18 16:36:06 -04:00
Edward Diener
eb2a675b8f Added #undef to quell VC++ warnings about macro be redefined. 2015-05-18 10:51:50 -04:00
Edward Diener
b12333b419 Fixed problem when repetitions go past 256 and the 257th loop op returns that the repetitions are finished. 2015-05-18 02:14:35 -04:00
Edward Diener
1543b5fbf7 Remove need to add extra nil element 2015-05-17 14:54:39 -04:00
Edward Diener
86378d648e Removed need to add extra seq element. 2015-05-17 13:30:03 -04:00
Edward Diener
4360660e39 Add wstringize.hpp to library header 2015-05-16 23:58:39 -04:00
Edward Diener
827ff0905c Cleaner use of preprocessor defines to quell warnings. 2015-05-16 23:44:06 -04:00