| |||
| [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] |
<snip>
What seems to have happened is that 10.4 has added some new optimisations for float precision math in the C++ headers for GCC 3.3 When you compile std::log10( (float)1.0) with the 10.2.8 C++ headers, it ends up calling log10 When you compile std::log10( (float)1.0) with the 10.4 C++ headers, it ends up calling log10f log10f (and friends e.g. powf, sinf etc.) are not implemented in the 10.2.8 version of libstdc++, so you get the error. <cmath> looks like this: #if _GLIBCPP_HAVE_LOG10F inline float log10(float __x) { return ::log10f(__x); } #else inline float log10(float __x) { return ::log10(static_cast<double>(__x)); } #endif I'm guessing that _GLIBCPP_HAVE_LOG10F shouldn't be defined if you are targeting 10.2.8. c++config.h doesn't look as if it defines it - anyone know where it is getting set? I got around the problem by casting the parameters to all my math calls to double (messy). - Paul Miller AVA CAD/CAM. |
_______________________________________________ Do not post admin requests to the list. They will be ignored. Xcode-users mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/xcode-users/email@hidden This email sent to email@hidden
| Home | Archives | FAQ | Terms/Conditions | Contact | RSS | Lists | About |
Visit the Apple Store online or at retail locations.
1-800-MY-APPLE
Contact Apple | Terms of Use | Privacy Policy
Copyright © 2007 Apple Inc. All rights reserved.