Является ли инициализация локального статического объекта-функции поточно-ориентированной?

Следующие две функции создают разные сборки, что говорит о том, что они разные. Может кто-нибудь сказать мне, чем они отличаются? И инициализация локальной функции статической переменной в func2 поточно-безопасна или нет? Если ответ зависит от компилятора, я хотел бы знать, как будут вести себя наиболее распространенные компиляторы с func2.

int func1(int val)
{
    const auto impl = [](int v)
    {
        return v * 10;
    };

    return impl(val);
}

int func2(int val)
{
    static const auto impl = [](int v)
    {
        return v * 10;
    };

    return impl(val);
}

Ответы на вопрос(2)

Ваш ответ на вопрос