Funny how you apply this argument here. I would suggest the exact same thing but in reverse. Return by value, and profile it to make sure it's not being "stupid."
It took me a long, long time to realize that pointers suck. Maybe there is hope for you.