以下のコードをコンパイルしようとしましたClang
class Prasoon{
static const int dummy = 0;
};
int const Prasoon::dummy = 0;
int main(){}
上記のコードでコンパイルした場合、エラーは発生しませんでしたClang.
prasoon@prasoon-desktop ~ $ clang++ --version
clang version 2.8 (trunk 107611)
Target: i386-pc-linux-gnu
Thread model: posix
prasoon@prasoon-desktop ~ $ cat bug.cpp
class Prasoon{
private:
static const int dummy = 0;
};
int const Prasoon::dummy = 0;
int main(){}
prasoon@prasoon-desktop ~ $ clang++ bug.cpp
prasoon@prasoon-desktop ~ $
しかし、同じコードをコンパイルするとg++
、予想どおりエラーが発生しました。
prasoon@prasoon-desktop ~ $ g++ bug.cpp
bug.cpp:8: error: duplicate initialization of ‘Prasoon::dummy’
でバグを見つけましたClang
か?