Subject: Re: [boost] quince: queries in C++ expressions
From: Damien Buhl (damien.buhl_at_[hidden])
Date: 2014-07-21 14:45:51
On 07/16/2014 07:49 AM, Michael Shepanski wrote:
> On 16/07/2014 2:14 PM, Mostafa wrote:
>> On Tue, 15 Jul 2014 18:27:07 -0700, Michael Shepanski
>> <mps_at_[hidden]> wrote:
>>> Quince, and the application code that uses it, need a C++11 compiler,
>>> and a pretty new one too: see
>>> . On the other hand there is no requirement on users to learn any
>>> C++11 features. You can access all of quince's features by writing
>>> C++03 code, and feeding it to your late-model C++11 compiler.
>> Thanks. It would help if that was explicitly mentioned in the
> does say "Quince is written in C++11". :)
>> (g++ by default uses C++03.)
> That's interesting. You're right, of course, and yet I didn't exert any
> effort to make it accept C++11. On my ubuntu machine I use Boost.Build,
> my user-config.jam contains this line:
> using gcc : 4.7 : g++-4.7 ;
> and somehow gcc gets invoked with the commandline option -std=c++11.
>> Out of curiosity, does the library *need* to be written in C++11, and,
>> if so, why?
> If I tried to rewrite it in C++03, its length would multiply, if only
> because of the need to replace variadic templates by a combinatorial
> explosion of overloads.
> But your question was about *need*, so perhaps the uses of decltype are
> more relevant. I do not think I could rewrite them to avoid decltype.
> (Maybe somebody else could, but I found it hard enough without any such
As I'm currently doing it for Boost.Fusion, your macro to adapt the
types could take advantage of Boost.TypeOf which would be your
replacement for decltype :
But C++11-only is fine for me. :)
> --- Michael
> Unsubscribe & other changes: