Denn du schrottest damit die Referentzählung des String
.
Das stimmt eben genau in diesem Fall nicht!
Stringkonstanten haben einen Referenzzähler von -1, der auch nicht verändert wird. Mit dem Move-Befehl wird ja auch nicht der String kopiert, sondern nur der Zeiger darauf. Für den weiteren Programmablauf verhält sich das Stringfeld im Record genauso als ob man die Konstante direkt zugewiesen hätte. Für nicht-konstante Strings hättest du natürlich Recht, weswegen ich diesen Code auch eher als Hack ansehe.
Du kannst Mavarik also unbehelligt lassen... (obwohl, eine Kopfnuss wäre vielleicht doch angebracht)