質問: Visual Studio Code で新規ファイルのエンコードについてですが、設定でデフォルトのエンコードを`BOM`付きの`UTF-8`にしています。 ``` { "files.encoding": "utf8bom", } ``` 以前は問題なかったのですが、最新のバージョン (1.47.1) でファイルを新規作成するとファイルの先頭に`BOM`(U+FEFF) が余分に付き、プログラムソースの場合コンパイルに失敗します。 `BOM`が余分というのは、`BOM`(U+FEFF)がファイルの先頭に二つ付いていると言うことです。コンパイラには最初の`U+FEFF`は`BOM`として認識されますが、もう一つの`U+FEFF` は文字 (ZERO WIDTH NO-BREAK SPACE ?) として扱われているようで、`GCC`でコンパイルすると ``` error: stray '\357' in program error: stray '\273' in program error: stray '\277' in program ``` というエラーがでます。 一度`BOM`無しの`UTF-8`で保存してから、再度開き直すと余分な`BOM`が削除されて正常になるのですが、一手間増えて面倒です。 デフォルトのエンコードを`utf8`にすれば問題はないのですが、諸般の事情で`utf8bom`にしています。 `utf8bom`のままで、問題を回避できる方法があればご教示頂きたいです。 開発環境 Windows10 Home 64bit Visual Studio Code 1.47.1 gcc (i686-posix-dwarf-rev0, Built by MinGW-W64 project) 8.1.0
回答: VScode の更新 (バージョン: 1.47.2) で問題が解決しました。 新規作成で余分な`BOM` (U+FEFF) が付かなくなりました。 VScode の不具合だったのかも知れませんが、リリースノートには特に書かれてないようでした。(見落としてている可能性も高いですが) お騒がせしましたが、これで解決と致します。