------- Comment #3 from rguenth at gcc dot gnu dot org 2010-03-08 10:39 ------- (In reply to comment #2) > Hm? How does calling std::pow with different types behave differently? The > value can be stored fine if one does "double dValue = std::pow(2.0, 64);long > long llValue = dValue;" // OK
Integer exponents have an overload that uses an implementation that does multiple roundings. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43284