Экспериментальные модули VC ++ не работают

Я пытаюсь экспериментальной реализации для модулей в Visual Studio 2017, версия 15.4.4. Я следовал инструкциям, описанным здесь https://blogs.msdn.microsoft.com/vcblog/2017/05/05/cpp-modules-in-visual-studio-2017/. Мне удалось сделать это довольно быстро в консольном приложении.

import std.core;
int main()
{
std::cout << "Hello modules!" << std::endl;
return 0;
}

Импорт и использование доступных стандартных модулей не является проблемой (насколько я пытался до сих пор).

Однако, когда я определяю свой собственный модуль, ничего не работает. Я добавил файл system.ixx (тип элемента C / C ++ compiler) со следующим содержимым:

import std.core;
export import system.io;

export struct console
{
void write(std::string_view text) { std::cout << text; }
void write_line(std::string_view text) { std::cout << text << std::endl; }
};

когда я добавлю import system.io в main.cpp

import std.core;
import system.io;

int main()
{
std::cout << "Hello modules!" << std::endl;
return 0;
}

Я получаю следующие ошибки:

1>system.ixx
1>system.ixx(2): error C2230: could not find module 'system.io'
1>main.cpp
1>main.cpp(2): error C2230: could not find module 'system.io'

Я также добавил /module:reference system.io.idf опциям компилятора, но нет system.io.idf файл создан из system.ixx.

Я знаю, что это экспериментально и имеет много проблем, но мне было интересно, должен ли я сделать, чтобы эта простая вещь работала.

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …