[C++/CLI] ICE при System.Core
От: _NN_ www.nemerleweb.com
Дата: 16.10.16 15:24
Оценка:
Минимальный пример:

using namespace System;

//#using <System.Core.dll>

class A
{
public:
    const wchar_t* F() { return L""; }
};

String^ readUnicodeString(A& msg)
{
    const wchar_t* text = msg.F();
    String^ str = gcnew String(text); // <<< ICE указывает сюда
    return str;
}

int main() {}


Компилятор VS 2008.

Если раскомментировать то получаем ICE.
Указывает на

1>fatal error C1001: An internal error has occurred in the compiler.
1>  (compiler file 'f:\dd\vctools\compiler\utc\src\p2\main.c[0x6396E0DB:0x00000030]', line 182)
1>   To work around this problem, try simplifying or changing the program near the locations listed above.
1>  Please choose the Technical Support command on the Visual C++
1>   Help menu, or open the Technical Support help file for more information
1>  INTERNAL COMPILER ERROR in 'C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\CL.exe'
1>      Please choose the Technical Support command on the Visual C++
1>      Help menu, or open the Technical Support help file for more information


Со старым синтаксисом управляемого C++ всё компилируется без проблем.
Есть идеи как обойти ?
http://rsdn.nemerleweb.com
http://nemerleweb.com
Отредактировано 16.10.2016 17:18 _NN_ . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.