Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-11 Thread David Abrahams
Aleksey Gurtovoy [EMAIL PROTECTED] writes: David Abrahams wrote: I agree completely, and I'll even promise not to change my mind for at least a week :-) Good! You, Aleksey and I all agree. So shall we go with this definition of BOOST_WORKAROUND from Gennaro Prota? #define

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-10 Thread John Maddock
OK, now I've rewritten and re-thought this email about 5 times ;-) Only 5 ? ;- I'm going to ask a controversial question: what is the point of checking the version at all in the case above, really? If you buy my argument that the user surely knows what he's doing when he specifies

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-10 Thread David Abrahams
John Maddock [EMAIL PROTECTED] writes: I agree completely, and I'll even promise not to change my mind for at least a week :-) Good! You, Aleksey and I all agree. So shall we go with this definition of BOOST_WORKAROUND from Gennaro Prota? #define BOOST_WORKAROUND(symbol, test) ((symbol !=

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-10 Thread Yitzhak Sapir
On Tue, 10 Dec 2002, David Abrahams wrote: And, I suggest BOOST_WORKAROUND(__BORLANDC__, |0x569) Since I began wondering whether it was a typo that you used | instead of , since the | obviously always evaluates true, leading me to browse this thread, I think something more descriptive

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-10 Thread David Abrahams
Yitzhak Sapir [EMAIL PROTECTED] writes: On Tue, 10 Dec 2002, David Abrahams wrote: And, I suggest BOOST_WORKAROUND(__BORLANDC__, |0x569) Since I began wondering whether it was a typo that you used | instead of , since the | obviously always evaluates true, leading me to browse this

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-10 Thread Yitzhak Sapir
On Tue, 10 Dec 2002, David Abrahams wrote: That's awfully verbose, though. And it would need a BOOST_ prefix, making it more verbose still. Given that the meaning of BOOST_WORKAROUND is already non-transparent, you need to read the documentation to understand it. I think it'd be best to

RE: [boost] [Config] Testing instructions for compiler vendors

2002-12-10 Thread Aleksey Gurtovoy
David Abrahams wrote: I agree completely, and I'll even promise not to change my mind for at least a week :-) Good! You, Aleksey and I all agree. So shall we go with this definition of BOOST_WORKAROUND from Gennaro Prota? #define BOOST_WORKAROUND(symbol, test) ((symbol != 0)

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-09 Thread John Maddock
This is bad [but read to the end because I might change my mind]. Suppose someone is working with a pre-release of MSVC 8.0. She knows it has several problems, so adds appropriate workarounds to the code. How can someone over at Microsoft is test their compiler against the Boost CVS without

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-09 Thread David Abrahams
John Maddock [EMAIL PROTECTED] writes: This is bad [but read to the end because I might change my mind]. Suppose someone is working with a pre-release of MSVC 8.0. She knows it has several problems, so adds appropriate workarounds to the code. How can someone over at Microsoft is test their

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-09 Thread David Abrahams
David Abrahams [EMAIL PROTECTED] writes: or #if BOOST_WORKAROUND(__BORLANDC__, +0x569) // not sure about overflow issues, so maybe not or #if BOOST_WORKAROUND(__BORLANDC__, |0x569) -- David Abrahams [EMAIL PROTECTED] * http://www.boost-consulting.com

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-08 Thread John Maddock
I don't (yet). Why do we need yet another macro which means turn off the workarounds? Would BOOST_STRICT_CONFIG then be obsolete? I think that the idea is that BOOST_STRICT_CONFIG applies only to unknown compiler versions, and BOOST_DISABLE_WORKAROUNDS (do we need separate

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-07 Thread Douglas Gregor
On Saturday 07 December 2002 06:47 am, John Maddock wrote: Maybe we need something new for those folks: something like BOOST_NO_WORKAROUNDS or whatever, that disables all compiler workarounds? To keep things centralised BOOST_NO_WORKAROUNDS should be defined by the compiler config when the

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-07 Thread Peter Dimov
From: Douglas Gregor [EMAIL PROTECTED] On Saturday 07 December 2002 06:47 am, John Maddock wrote: Maybe we need something new for those folks: something like BOOST_NO_WORKAROUNDS or whatever, that disables all compiler workarounds? [...] I like it. Looks reasonable, although I'd prefer

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-07 Thread David Abrahams
Douglas Gregor [EMAIL PROTECTED] writes: On Saturday 07 December 2002 06:47 am, John Maddock wrote: Maybe we need something new for those folks: something like BOOST_NO_WORKAROUNDS or whatever, that disables all compiler workarounds? To keep things centralised BOOST_NO_WORKAROUNDS should be

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-07 Thread David Abrahams
Peter Dimov [EMAIL PROTECTED] writes: From: David Abrahams [EMAIL PROTECTED] I like it. I don't (yet). Why do we need yet another macro which means turn off the workarounds? Would BOOST_STRICT_CONFIG then be obsolete? I think that the idea is that BOOST_STRICT_CONFIG applies only to

RE: [boost] [Config] Testing instructions for compiler vendors

2002-12-05 Thread Aleksey Gurtovoy
David Abrahams wrote: I'm trying to come up with instructions for compiler vendors who want to use Boost to test their compilers. What preprocessor symbols do they need to define? So far, it looks like: - BOOST_NO_COMPILER_CONFIG - BOOST_NO_STDLIB_CONFIG - if they want to check

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-05 Thread David Abrahams
Aleksey Gurtovoy [EMAIL PROTECTED] writes: David Abrahams wrote: I'm trying to come up with instructions for compiler vendors who want to use Boost to test their compilers. What preprocessor symbols do they need to define? So far, it looks like: - BOOST_NO_COMPILER_CONFIG -

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-05 Thread Gennaro Prota
--- David Abrahams [EMAIL PROTECTED] wrote: [...] I propose: #ifndef BOOST_STRICT_CONFIG # define BOOST_WORKAROUND(symbol, test) (defined(symbol) symbol test) #else # define BOOST_WORKAROUND(symbol, test) 0 #endif Comments? Sorry for jumping in without really

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-05 Thread Joerg Walter
- Original Message - From: David Abrahams [EMAIL PROTECTED] To: boost [EMAIL PROTECTED] Sent: Wednesday, December 04, 2002 9:27 PM Subject: [boost] [Config] Testing instructions for compiler vendors Hi, I'm trying to come up with instructions for compiler vendors who want to use

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-05 Thread Joerg Walter
- Original Message - From: David Abrahams [EMAIL PROTECTED] To: Boost mailing list [EMAIL PROTECTED] Sent: Thursday, December 05, 2002 9:38 PM Subject: Re: [boost] [Config] Testing instructions for compiler vendors [EMAIL PROTECTED] (Joerg Walter) writes: 1. Should we do

Re: [boost] [Config] Testing instructions for compiler vendors

2002-12-05 Thread Douglas Gregor
On Thursday 05 December 2002 02:41 pm, David Abrahams wrote: I propose: #ifndef BOOST_STRICT_CONFIG # define BOOST_WORKAROUND(symbol, test) (defined(symbol) symbol test) #else # define BOOST_WORKAROUND(symbol, test) 0 #endif Comments? I'm still not sure that