Do you have LLVM IR output? There are definitely places where rust's hinting isn't optimal, and that might not be too difficult to fix.
Try writing the same simple code as D and compare the two IR representations.
And no matter how much I slag on rust being difficult, the community is really good about helping and teaching.