ICC17.0の変数テンプレートが少〜し変よ〜

ICC17.0が出たのでさっそくアップデートしました。

  • Support C++14 variable templates (N3651)

となってるのでワクテカで変数テンプレートを試してみたわけですがちょっとおかしい。

とりあえずconstexprな変数テンプレートのコンパイルは通る。

だがしかし、constexpr な変数テンプレートを特殊化するとコンパイルエラーになる。

これ、ClangやMSVCではコンパイル通るけど、ICC17.0では「a constexpr variable declaration must be a definition」というエラーが出る。

変数テンプレートのconstexprを取り除いて

ってするとICC17.0でもコンパイル通る。。。。 これってICCの変数テンプレートの実装ミスだよなあ。。。。。