title: Have I found a bug in Clang?
body: <p>I tried to compile the code below with <code>Clang</code></p>
  
  <pre><code>class Prasoon{
  
    static const int dummy = 0;
  
  };
  int const Prasoon::dummy = 0;
  
  int main(){}
  </code></pre>
  
  <p>The above code did not give any error when compiled with <code>Clang.</code> </p>
  
  <pre><code>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 ~ $ 
  </code></pre>
  
  <p>But when I compiled the same code with <code>g++</code> I got an error as expected. </p>
  
  <pre><code>prasoon@prasoon-desktop ~ $ g++ bug.cpp
  bug.cpp:8: error: duplicate initialization of ‘Prasoon::dummy’
  </code></pre>
  
  <p>So have I found a bug in <code>Clang</code>? </p>