モジュールは #includes の代替です。Clang には C++ の完全な実装があります。今 Clang を使用してモジュールを使用したい場合はどうすればよいですか?
使用する
import std.io;
モジュールの仕様 (構文を含む) が最終版ではないため、C++ ソース ファイル内の はまだ動作 (コンパイル) しません。
Clangのドキュメントには、フラグを渡す-fmodules
と #includes が適切なインポートに書き換えられることが記載されています。ただし、プリプロセッサをチェックすると、そうでないことが示唆されます (test.cpp に#include <stdio.h>
は空のメインしか含まれていません)。
$ clang++-3.5 -fmodules -E test.cpp -o test
$ grep " printf " test
extern int printf (const char *__restrict __format, ...);
-fmodules
さらに、 vs フラグをまったく指定せずにこのテスト ファイルをコンパイルすると、同じオブジェクト ファイルが生成されます。
私は何を間違っていますか?