Opened 14 years ago
Closed 14 years ago
#2345 closed Patches (fixed)
[mpl] Patch to improve support for CodeGear C++Builder 2009
Reported by: | Nicola Musatti | Owned by: | Aleksey Gurtovoy |
---|---|---|---|
Milestone: | To Be Determined | Component: | mpl |
Version: | Boost Development Trunk | Severity: | Problem |
Keywords: | Cc: |
Description
The attached patch fixes workarounds for the latest CodeGear (ex Borland) compiler.
Attachments (1)
Change History (8)
by , 14 years ago
Attachment: | boost_mpl.patch added |
---|
comment:1 by , 14 years ago
comment:2 by , 14 years ago
Status: | new → assigned |
---|
follow-up: 4 comment:3 by , 14 years ago
Overall, it looks good. A couple of questions:
- In "assert.hpp", why
-#if BOOST_WORKAROUND(__BORLANDC__, >= 0x560) && BOOST_WORKAROUND(__BORLANDC__, < 0x600) \ +#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
vs.
-#if BOOST_WORKAROUND(__BORLANDC__, >= 0x560) && BOOST_WORKAROUND(__BORLANDC__, < 0x600) \ +#if BOOST_WORKAROUND(__BORLANDC__, >= 0x560) && BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \
?
- In "quote.hpp", why
-#if defined(BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS) +#if defined(BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS) && !BOOST_WORKAROUND( __BORLANDC__, >=0x590 ) # define BOOST_MPL_CFG_NO_QUOTE_TEMPLATE #endif
vs. modifying BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS condition in "aux_/config/ttp.hpp"?
- Changes to "apply_wrap.hpp" and "quote.hpp" won't have any effect until we regenerate preprocessed headers. Were you testing the whole thing with BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS defined?
comment:4 by , 14 years ago
Replying to agurtovoy:
First of all. keep in mind that I'm not the original author of most of the patches I submitted in the last few weeks. These are the work of Alisdair Meredith and his collegues at CodeGear. I'm more or less just helping with getting them in shape for being applied to trunk.
Overall, it looks good. A couple of questions:
- In "assert.hpp", why
-#if BOOST_WORKAROUND(__BORLANDC__, >= 0x560) && BOOST_WORKAROUND(__BORLANDC__, < 0x600) \ +#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \vs.
-#if BOOST_WORKAROUND(__BORLANDC__, >= 0x560) && BOOST_WORKAROUND(__BORLANDC__, < 0x600) \ +#if BOOST_WORKAROUND(__BORLANDC__, >= 0x560) && BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x610)) \?
I guess this is just meant as a simplification, as the last compiler before 5.6.0, i.e. 5.5.1 is about eight years old and not likely to be able to compile very much of current Boost anyway.
- In "quote.hpp", why
-#if defined(BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS) +#if defined(BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS) && !BOOST_WORKAROUND( __BORLANDC__, >=0x590 ) # define BOOST_MPL_CFG_NO_QUOTE_TEMPLATE #endifvs. modifying BOOST_MPL_CFG_NO_TEMPLATE_TEMPLATE_PARAMETERS condition in "aux_/config/ttp.hpp"?
I have no idea, sorry...
- Changes to "apply_wrap.hpp" and "quote.hpp" won't have any effect until we regenerate preprocessed headers. Were you testing the whole thing with BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS defined?
Yes. My problem is I don't know how to regenerate the preprocessed headers for this compiler; still either that needs to be done or needs to be defined BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS, if just on a temporary basis.
Cheers, Nicola
comment:5 by , 14 years ago
I took the liberty of committing this patch to trunk, as tonight is the last chance to get it through a trunk regression test run and still make it into 1.37 . Ready to revert in case of problems.
comment:6 by , 14 years ago
Thanks. I've made a couple of small fixes and regenerated corresponding preprocessed headers. Let's see how this turns out.
comment:7 by , 14 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Merged to the release branch.
Although I have commit privileges I'd rather have this patch reviewed before applying it myself (aleksey?)