title: What does "Cannot overload functions distinguished by return type alone" mean?
body: <p>I have this code:</p>
  
  <p>In the header:</p>
  
  <pre><code>...
  int32_t round(float v);
  ...
  </code></pre>
  
  <p>and in the source</p>
  
  <pre><code>...
  int32_t round(float v)
  {
      int32_t t = (int32_t)std::floor(v);
      if((v - t) &gt; 0.5)
          return t + 1;
  
      return t;
  }
  ...
  </code></pre>
  
  <p>I've looked around here on this site but the examples seem a bit too complicated to me.</p>
  
  <p>I'm learning C++ so if someone could explain to me what the error means and why it's occurring I would be grateful.</p>