Как заставить Clang 3.4 скомпилировать общие лямбды?

Компилятор в rextester говорит, что работает clang 3.4, а на странице поддержки языка clang говорится, что clang 3.4 поддерживает общие лямбда-выражения, но я не могу получить этот код для компиляции:

int main()
{
    auto genLambda = [](auto param) {};
}

Я собираю с -std=c++1y, Компилирование с --version результаты в следующем, поэтому я считаю, что я использую Clang 3.4:

Ubuntu clang version 3.4-1ubuntu1 (trunk) (based on LLVM 3.4)
Target: x86_64-pc-linux-gnu
Thread model: posix

Есть идеи, что я делаю не так?

1 ответ

Решение

Использование clang 3.4 на моем компьютере только с --std=c++1y работает с вашим примером кода.

Ubuntu clang version 3.4-1ubuntu3 (tags/RELEASE_34/final) (based on LLVM 3.4)

Потому что ваш --version Рекомендации trunk Вероятно, это SVN-копия clang 3.4, которая была получена до того, как в базу кода были добавлены общие лямбды.

Другие вопросы по тегам