title: Copy constructor deleted error. Compiler is not calling the move assignment operator
body: <p>Here's an MRE.</p>
  <pre><code>struct SDL_Renderer {};
  struct Renderer
  {
      Renderer(SDL_Renderer* renderer) : pRenderer{ renderer } {}
  
      Renderer&amp; operator=(Renderer&amp;&amp; other)
      {
          pRenderer = other.pRenderer;
          other.pRenderer = nullptr;
          return *this;
      }
  
      SDL_Renderer* pRenderer;
  };
  
  int main()
  {
      SDL_Renderer sdlRenderer;
      Renderer renderer = Renderer{ &amp;sdlRenderer };
  
      //Error: Copy constructor is a deleted function
      Renderer moved = std::move(renderer);
  }
  </code></pre>
  <p>Why the compiler not calling the move assignment operator instead of complaining that a copy constructor is missing. I am not even trying to copy anything. Am I?</p>