title: Inconsistency for size_t and sizeof
body: <p>Isn't it bothersome that the result of a native operator cannot be defined without including a header file?</p>
  
  <p>According to this <a href="http://en.cppreference.com/w/cpp/types/size_t">page</a>, <code>size_t</code> is defined in headers cstddef, cstdio, cstring, ctime, and cstdlib. Thus, if neither of those headers is included then <code>size_t</code> should be undefined. However, the following program compiles without any warning (using MSVC 2015RC).</p>
  
  <pre><code>int main()
  {
      auto d_Size = sizeof( int );
      return 0;
  }
  </code></pre>
  
  <p>It seems that <code>size_t</code> is somewhat of a bastard between a native type and a typedef. What does the standard say?</p>