title: Static declaration follows non-static declaration, but no functions declared statically
body: <p>I have code similar to the following:</p>
  
  <pre><code>void interact();
  int main( int arg_count, const char* args[] ){
      tty_save();                 /* save current terminal mode */
      interact();                 /* interact with user */
      tty_restore();              /* restore terminal to the way it was */
      return 0;
  }
  
  void interact(){
      /* do various stuff */
  }
  </code></pre>
  
  <p>I don't see where the "static declaration is". I declare the function once (non-statically) before main() and then define the function after main(), once again, non-statically. Why am I getting this compile error?</p>
  
  <p>The error is "Static declaration of interact() follows non-static declaration".</p>