title: strcmp behaviour
body: <p>When I run the following code: </p>
  
  <pre><code>#include &lt;stdio.h&gt;
  
  int main(int argc, char *argv[])
  {
      int p = 0;
  
      p = strcmp(NULL,"foo");
  
      return 0;
  }
  </code></pre>
  
  <p>I get segmentation fault. echo $? says 139. But when I run </p>
  
  <pre><code>#include &lt;stdio.h&gt;
  
  int main(int argc, char *argv[])
  {
      int p = 0;
  
      strcmp(NULL,"foo"); // Note removed assignment
  
      return 0;
  }
  </code></pre>
  
  <p>I don't get any segmentation fault. Could someone please throw some light?</p>
  
  <p>Here is my gcc info:</p>
  
  <pre><code>&gt; gcc --version
  gcc (GCC) 3.4.6 20060404 (Red Hat 3.4.6-8)
  </code></pre>