No way is this correct, it writes into the returned variant GValue without actually allocating it. I guess that's why it wasn't actually being called. :)
Created attachment 19241 [details] [review] delete bonged EchoVariant test case
I think the way returned variants are handled is special in the sense that dbus-glib will allocate it for you. Did you try calling it and it crashed?
Ok, so it seems, upsettingly, that this is in fact a valid API use. Invalidating this bug.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.