title: Store function address into global variable
body: <p>Consider the following code:</p>
  
  <pre><code>void f() {};
  void* v = f;
  int i = f;
  int main() { }
  </code></pre>
  
  <p>Why storing function address into <code>int</code> variable gives me an <a href="http://melpon.org/wandbox/permlink/dzgrg5ohnIErJliN" rel="nofollow noreferrer">error</a>: </p>
  
  <blockquote>
    <p>error: initializer element is not a compile-time constant</p>
  </blockquote>
  
  <p>But for <code>void*</code> variable doesn't?</p>