title: std::string.find_first_not_of, unexpected return value
body: <pre><code>#include &lt;stdio.h&gt;
  #include &lt;string&gt;
  
  int main(void)
  {
      printf("%u\n", std::string("\n").find_first_not_of(" \t\n\v\f\r", 0, 1));
  }
  </code></pre>
  
  <p>The following program prints 0, not std::string::npos as I expected. Why?</p>