title: What's wrong with this macro?
body: <p>I am facing a problem with a macro and I can't figure out why.</p>
  
  <p>Here is the macro : </p>
  
  <pre><code>#define WAIT(condition, max_time)               \
     do {                                         \
        int int_loop_wait=0;                      \
        while(1)                                  \    
        {                                         \           
          if(condition) { break; }                \
          sleep(1);                               \
          if(int_loop_wait&gt;=max_time) { break; }  \
          int_loop_wait++;                        \
        }                                         \
      } while(0)                                  \
  </code></pre>
  
  <p>I got the error </p>
  
  <blockquote>
    <p>"expected a declaration" line   " if(condition) { break; } "</p>
  </blockquote>
  
  <p>Does anyone understand this error?                                                                      </p>