Ошибка компилятора C2360 при сборке TFS, но не на рабочем столе - PullRequest
1 голос
/ 11 мая 2010

Фрагмент кода c ++ / cli, подобный приведенному ниже, вызвал сбой сборки TFS с ошибкой компилятора C2360.

switch (i)
{
    case 0 :
        for each (int n in a)
        System::Console::WriteLine(n.ToString());
        break;
    case 1 :
        System::Console::WriteLine("n is not in scope here");
        break;
}

Это исправлено с помощью {} скобок в теле случая 0, как показано ниже:

switch (i)
{
    case 0 :
        {
            for each (int n in a)
            System::Console::WriteLine(n.ToString());
        }
        break;
    case 1 :
        System::Console::WriteLine("n is not in scope here");
        break;
}

Разработчик успешно скомпилировал код на своем рабочем столе, прежде чем вносить изменения.

Беглый взгляд на такие версии, как компиляторы, Visual Studio и т. Д. На сервере и на рабочем столе, позволяет предположить, что они одинаковы.

Исходный код, очевидно, такой же.

В чем разница между сборкой на рабочем столе и сборкой TFS, которая может погасить такую ​​ошибку компилятора?

...