fixes #26010 Cursors do not own their values and therefore cannot transfer ownership through move. Reject move(cursor) during semantic analysis and share the cursor-location check between semantic analysis and destructor injection.