title: Undefined reference linker error when implementing function declared in anonymous namespace
body: <p>When defining a function signature in an anonymous namespace within a .hpp, is it valid to place the implementation of that function within the .cpp? When I do so I get an undefined reference error.</p>
  
  <p>Example:</p>
  
  <pre><code>//hpp
  #ifndef __BAR_HPP_
  #define __BAR_HPP_
  namespace foo
  {
     namespace 
     {
         struct Bar
         {
             void func();
         };
     }
  }
  #endif
  
  //cpp  
  using foo;
  
  void Bar::func()
  {
      //...
  }
  </code></pre>