Boost logo

Boost Users :

Subject: Re: [Boost-users] xpressive
From: Louis Lavery (Louis_at_[hidden])
Date: 2011-05-07 08:42:22


On 07/05/2011 11:27, Eric Niebler wrote:
> On 5/7/2011 1:56 AM, Louis Lavery wrote:
>> Apart from the C4701 warning (which I can suppress for now) it seems
>> happy compiling stuff like this...
>>
>> sregex rex = as_xpr("foo")>> _d>> "xyz";
>>
>> ...so long as I enable language extensions and use the pragma.
>
> Oh, you were using /Za? This switch is useless.

It changes the compiler's behaviour so is surely not completely useless?

Even Microsoft's own
> headers don't compiler with language extensions disabled.

As far as I remember I've always used /Za with out any problems, maybe
I've been lucky and never needed to #include the MS headers that require
no /Za. I tend to use just the std containers, algorithm, iostream,
string and such, just std C++ stuff.

Maybe by "Microsoft's own headers" you mean those specific to Microsoft,
in which case case I can see that /Za should be off.
But then I don't use MS not standard code/headers as I need my code to
compile under other compilers - so I want to stick to pure C++.

I used to work
> in the MSVC group at Microsoft. Every time a customer complained about
> /Za, they were told to simply stop using it.
>

Well, yeah, they would say that wouldn't they.

I would be a lot happier using xpressive if I didn't have to enable
language extensions. I'm not sure exactly how I'm going to use it. It
might be that I build a static lib, using xpressive, that I can link to
and so still use /Za in my main code. If that restricts the power of
xpressive and I need to use the templates directly, and so have to
enable MS language extensions, I'll have to have a rethink.

Please don't take this as criticism of xpressive (it's meant to be
constructive criticism at worst), I'm keen on it. From what I've seen so
far it's intuitive and easy to use.

Louis.


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net