Msvs12 обрабатывает фигурные скобки как оператор()

#include <iostream>

struct A
{
    void operator()(const char *)
    {
        std::cout << "void operator()(const char *)" << std::endl;
    }
};

int main(int argc, char* argv[])
{
    A a;

    a{"hi"};

    return 0;
}

msvs12 доволен этим кодом, и я не понимаю, почему. Это ошибка или что-то еще?

Обновление: я пытался с msvs 2013 (v12.0.31101.0 Update 4)