I will admit that in 2010 the iPhone4 was hands down the best smartphone for long battery life, but as of Summer 2011, these new high end dual core Android phones running Gingerbread have gotten much better. Look at the EVO 4G which sucked at like 4 hours 3G talk time, now a year later the EVO-3D is rated at almost double.
And the big update Android 4.0 "Ice Cream" is supposed to make the OS even more efficient and give it better battery life.
Bottom line is, all these phones still suck as far as battery life goes. I would like to see a phone I can bring on camping trip for several days, watch movies, text people, read online sites, e-mail, etc...and not have the battery die after 3 days of that kind of use. Now that would be IMPRESSIVE.