Archives
D Programming
DD.gnu digitalmars.D digitalmars.D.bugs digitalmars.D.dtl digitalmars.D.dwt digitalmars.D.announce digitalmars.D.learn digitalmars.D.debugger C/C++ Programming
c++c++.announce c++.atl c++.beta c++.chat c++.command-line c++.dos c++.dos.16-bits c++.dos.32-bits c++.idde c++.mfc c++.rtl c++.stl c++.stl.hp c++.stl.port c++.stl.sgi c++.stlsoft c++.windows c++.windows.16-bits c++.windows.32-bits c++.wxwindows digitalmars.empire digitalmars.DMDScript electronics |
c++ - std::sqrt() with a double argument gives an error
The following code gives an error: #include <cmath> int main() { std::sqrt(10.0); } int main() { std::sqrt(10.0); } ^ Error: ambiguous reference to symbol Had: std::_inline_sqrt(float ) and: std::_inline_sqrt(long double ) --- errorlevel 1 It works fine if I use sqrt() instead of std::sqrt(), or if I use a float or long double value, e.g. std::sqrt(10.0f) I have stared at math.h for some time but I could not figure out what the difference between std::sqrt() and sqrt() is (or where std::sqrt() is defined). Could someone please take a look at this and show me what to change in the library headers to make it work? Szabolcs Sep 01 2007
OK, I'm stupid, I should have looked at STLport's cmath, not at dmc's. I also found the previous posts about this. Sep 01 2007
|