title: error "C++ requires a type specifier for all declarations" on static function call
body: <p>I have a static memory pool for my allocator:</p>
  
  <pre><code>template&lt;typename Tag&gt;
  struct AllocatorPool {
    static void initialize(size_t bytes)
    {
      gPool.allocatePool(bytes);
    }
      typedef AllocatorImpl::Pool tPool;
      static tPool gPool;
  };
  </code></pre>
  
  <p>Definition of the memory pool:</p>
  
  <pre><code>template&lt;typename T&gt; typename AllocatorPool&lt;T&gt;::tPool AllocatorPool&lt;T&gt;gPool;
  </code></pre>
  
  <p>If I want to initialize the pool like this:</p>
  
  <pre><code>AllocatorPool&lt;MyClass&gt;::initialize(1024);
  </code></pre>
  
  <p>the compiler outputs the following error for this line:</p>
  
  <pre><code>"C++ requires a type specifier for all declarations"
  </code></pre>
  
  <p>I use Xcode 4.6.3 and the Apple LLVM compiler 4.2</p>