title: C Preprocessor getting rid of the __align__ and __attribute__
body: <p>I am working with a primitive <strong>C</strong> Parser that does not handle the Preprocessor directive.</p>
  
  <p>I can preprocess most of the header with the -E switch without problem.</p>
  
  <p>Lately I found cases when <strong>attribute</strong> and <strong>align</strong> are present.</p>
  
  <p>I tried to get rid of them with this tweak:</p>
  
  <pre><code>gcc -D "aligned(ARGS)" \
      -D "__align__(ARGS)" \
      -D "__attribute__(ARGS)" \
      -E /usr/local/include/fancyheader.h 
  </code></pre>
  
  <p><strong>Update:</strong></p>
  
  <p>But without success, example:</p>
  
  <pre><code>struct __attribute__((aligned(16))) long4
  {
    long int x, y, z, w;
  };
  </code></pre>
  
  <p>The above statements is transformed to, with that "1" pending around</p>
  
  <pre><code>struct 1 long4
  {
    long int x, y, z, w;
  };
  </code></pre>
  
  <p><strong>Who knowzs the correct way to get rid of the __align__ and __attribute__ extensions ?</strong></p>