https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90501
--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> --- (In reply to Jakub Jelinek from comment #8) > So the first question would be why D passes the return value as > DECL_BY_REFERENCE if it doesn't have TREE_ADDRESSABLE type. I guessed it's optimization (using the wrong machinery?).