title: Range-for-statement cannot build range expression with array function parameter
body: <p>Why cannot build range expression passing an array as a function argument and using in a range-for-statement.
  Thanks for the help</p>
  
  <pre><code>void increment(int v[]){
      // No problem
      int w[10] = {9,8,7,6,5,4,3,2,1,9};
      for(int&amp; x:w){
          std::cout&lt;&lt;"range-for-statement: "&lt;&lt;++x&lt;&lt;"\n";
      }
  
      // error: cannot build range expression with array function 
      // parameter 'v' since parameter with array type 'int []' is 
      // treated as pointer type 'int *'
      for(int x:v){
          std::cout&lt;&lt;"printing "&lt;&lt;x&lt;&lt;"\n";
      }
  
      // No problem
      for (int i = 0; i &lt; 10; i++){
          int* p = &amp;v[i];             
      }
  }
  
  int main()
  {
      int v[10] = {9,8,7,6,5,4,3,2,1,9};
      increment(v);
  }
  </code></pre>