38

モジュールは #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 フラグをまったく指定せずにこのテスト ファイルをコンパイルすると、同じオブジェクト ファイルが生成されます。

私は何を間違っていますか?

4

2 に答える 2