Boost logo

Boost :

Subject: Re: [boost] Compile Time String in C++11/C++14
From: Adam Wulkiewicz (adam.wulkiewicz_at_[hidden])
Date: 2014-08-26 10:52:08

Adam Wulkiewicz wrote:
> Adam Wulkiewicz wrote:
>> Tongari J wrote:
>>> 2014-08-26 19:43 GMT+08:00 Adam Wulkiewicz <adam.wulkiewicz_at_[hidden]>:
>>>> Tongari J wrote:
>>>>> Hi Louis,
>>>>> 2014-08-26 0:01 GMT+08:00 Louis Dionne <ldionne.2_at_[hidden]>:
>>>>>> This is genius, thanks a lot for posting. I've been searching for a
>>>>>> way to do this to implement compile-time strings in Boost.Hana[1].
>>>>>> Glad to hear :)
>>>>> Actually I've found an even simpler way:
>>>> Nice! And with some small tweaks it works in C++11, assuming you
>>>> have some
>>>> implementation of index_sequence:
>>> I believe this still requires C++14 for returning the local struct in
>>> lambda, which is not a one-liner.
>> I'm not that well versed in the ways of the standard but I do know
>> that it compiles in GCC 4.8.1, 4.8.3, 4.9.1 and clang 3.4 with
>> -std=c++11 switch. So either those compilers are buggy or C++14 isn't
>> really required.
>> As said before MSVC2013 complains about something else.
> Actually besides the complaining about static data member in local
> struct (get() member function) MSVC2013 indeed complains about the
> returning of local struct. AFAIU all of the presented implementations
> should fail on this compiler.

A remark, the first mentioned MSVC error is caused by the lack of the
support for 'constexpr' keyword in this compiler.

> Regards,
> Adam

Boost list run by bdawes at, gregod at, cpdaniel at, john at