title: Cannot convert from XXX** to const XXX**
body: <p>I have the very simple code in c++. When I compile under Visual studio, the error happens.</p>
  
  <pre><code>#include &lt;stdint.h&gt;
  #include &lt;time.h&gt;
  void func1(const uint8_t* data)
  {
  }
  
  void func2(const uint8_t** data)
  {
  }
  int main() 
  {
      uint8_t* data1 = NULL;
      uint8_t** data2 = NULL;
      func1(data1);//OK
      func2(data2);//error C2664: cannot convert argument 1 from 'uint8_t **' to 'const uint8_t **'
  }
  </code></pre>
  
  <p>the full error meesage is:</p>
  
  <p>error C2664: 'void func2(const uint8_t **)' : cannot convert argument 1 from 'uint8_t **' to 'const uint8_t **'</p>
  
  <p>Usualy you cannot convert const XXX to XXX, but from XXX to const XXX should be OK, Why this error happens here?</p>