It says a lot about programming how far you can get with copy not reference, even though the base information often needs to be mutated and the whole point of the reference was to change state at the reference. But when code refactors and the need dies, you go on with things. So a missed ref -> copy is fine, contextually, for many people.
To this day I still get confused about what passes in some languages. the explicit &ref notation has merit of being clear.