Boost logo

Boost :

Subject: Re: [boost] libzeep
From: Lars Viklund (zao_at_[hidden])
Date: 2010-04-13 19:16:19


On Tue, Apr 13, 2010 at 04:00:52PM -0700, Steven Watanabe wrote:
> Lars Viklund wrote:
>> On Wed, Apr 14, 2010 at 12:21:31AM +0200, Juraj Ivančić wrote:
>>
>>> As an interesting side note - while attempting to compile libzeep I
>>> found that VS 9.0 compiler does not recognize spelled logical
>>> operators ('or', 'not' and 'and') as C++ keywords. Furthermore,
>>> passing macros like or=|| on the VS command line causes internal
>>> compiler error. Putting them inside code as #defines is OK for VS,
>>> but gcc (correctly) refuses to preprocess this.
>>>
>>
>> Aren't the alternative spellings like `or', `and' and such defined in
>> <ciso646>?
>>
>
> C.2.2.2 Header <iso646.h> [diff.header.iso646.h]
> The tokens and, and_eq, bitand, bitor, compl, not_eq, not, or, or_eq,
> xor, and xor_eq are
> keywords in this International Standard (2.11). They do not appear as
> macro names defined in
> <ciso646>.

So I noticed when I read that section prior to mailing. I assumed that
one of the compilers involved might not completely honor that clause.

-- 
Lars Viklund | zao_at_[hidden]

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk