title: Why are anonymous namespaces not a sufficient replacement for namespace-static, according to the standards committee?
body: <p>According to <a href="https://stackoverflow.com/a/8460248/734069">this answer</a>, namespace-scoped static variables were undeprecated in C++11. That is, they were deprecated in C++03, because anonymous namespaces were considered better. But C++11 undeprecated them.</p>
  
  <p>Why? <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3296.html#FI6" rel="noreferrer">N3296 lists the reasoning for this</a> as:</p>
  
  <blockquote>
    <p>The use of static in namespace scope should not be deprecated. Anonymous namespaces are not a sufficient replacement for the functionality.</p>
  </blockquote>
  
  <p>This was apparently accepted by the committee. Why? What is it about anonymous namespaces that does not completely replace this functionality?</p>
  
  <p>I would prefer answers that had some documentation or paper trail of a standards committee discussion.</p>