Draft: function: Handle transfer-none string results without throwing an error
This restores pre-1.75.2 compatibility with existing code that expects transfer-none function results to work, while also mitigating storage lifetime concerns by duplicating each result (only once).
Fixes: #519 (closed)