Я видел в списке рассылки boost.hana следующий пример, который не компилируется:
#include <boost/hana.hpp>
#include <string>
namespace hana = boost::hana;
int main(int argc, char **argv) {
constexpr auto m1 = hana::make_map(
hana::make_pair("key1"_s, hana::type_c<std::string>),
hana::make_pair("key2"_s, hana::type_c<std::string>)
);
}
Я получаю следующую ошибку в GCC 7.3.0 -std=c++14:
error: unable to find string literal operator ‘operator""_s’ with ‘const char [5]’, ‘long unsigned int’ arguments
hana::make_pair("key1"_s, hana::type_c<std::string>),
^~~~~~~~
И, кстати, что за суффикс «_s» у строкового литерала?