title: GCC error: expected ‘)’ before <function protoyprmeter> parameter
body: <p>In a header file</p>
  
  <p><code>extern void Trace_Communication(communicationBlock_t mdbMessage);</code></p>
  
  <p>gives <code>error: expected ‘)’ before ‘mdbMessage’</code></p>
  
  <p>I am sure that <code>communicationBlock_t</code> is in scope (and reliaze that it would be more efficient to pass a pointer)</p>
  
  <p>If I copy the declaration of <code>communicationBlock_t</code> just before the <code>extern</code> offending line, the error is  </p>
  
  <pre><code>error: conflicting types for ‘communicationBlock_t’  
  note: previous declaration of ‘communicationBlock_t’ was here
  </code></pre>
  
  <p>Which seems to imply that the offending line has access to the declaration of <code>communicationBlock_t</code></p>
  
  <p>I guess that I am overlooking something trivial and obvious, but I have been coding all night and can no longer think straight ...</p>
  
  <p>What am I doing wrong? Thanks 1 ,000,000</p>
  
  <hr>
  
  <p>Update: my guess is that it's an include file tangle ...</p>
  
  <pre><code>typedef struct
  {
    communicationMessage_t message;
    uint8_t                length;
  #ifdef TESTING
     char                   commandName[32];    // for testing porpoises 
     DoRunTimeChecks        runTimeCheckCallback;
  #endif      
  } communicationBlock_t;
  </code></pre>