How to disable GNU C extensions?
<p>As you can see in the following code, I've introduced a nested function within <code>main()</code>:</p>

<pre><code>#include &lt;stdio.h&gt;

int main(){
 int a=5;
 printf("%d\n",a);
 {
  int a=10;
  printf("%d\n",a);
 }
 printf("%d\n",a);

 //Nested function
 int main(int a){
 if(a&gt;0)printf("%d\n",a--);
 return 0;
 }

 main(7);
 return 0;
}
</code></pre>

<p>As far as I could understand I used the <code>-std=c99</code> flag in gcc to "disable" the unnecessary extensions, but I did not get any error.</p>

<p><code>gcc temp3.c -std=c99 -o temp3.out</code></p>

<p>Where have I made the mistake?</p>