Package: libstdc++2.10 Version: 1:2.95.2-14 Severity: important The attached C++ program doesn't build with g++-2.95. According to the documentation it should, and under g++-3.0 it does build (using libstdc++-3) And it of course builds with gcc-2.95 (if I do a C version)
Well I can use <cmath> if I #define _ISOC99_SOURCE which is rather pointless, since I'm talking about c++ here. Is there something wrong with __STDC_VERSION__ in g++-2.95? The following portion of /usr/include/features.h seems to be where this include fails. ------------------------- /* This is to enable the ISO C99 extension. Also recognize the old macro which was used prior to the standard acceptance. This macro will eventually go away and the features enabled by default once the ISO C99 standard is widely adopted. */ #if (defined _ISOC99_SOURCE || defined _ISOC9X_SOURCE \ || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L)) # define __USE_ISOC99 1 #endif --------------------------- This should be fixable within this package. #include definitely fails with g++-2.95 orion:libstdc++$ g++ trunc.cxx trunc.cxx: In function `int main()': trunc.cxx:6: implicit declaration of function `int trunc(...)' orion:libstdc++$ Thanks, -- System Information Debian Release: testing/unstable Architecture: i386 Kernel: Linux orion 2.4.3 #2 Thu May 24 21:48:24 EEST 2001 i686 Locale: LANG=C, LC_CTYPE=C Versions of packages libstdc++2.10 depends on: ii libc6 2.2.3-6 GNU C Library: Shared libraries -- Eray Ozkural (exa) <[EMAIL PROTECTED]> Comp. Sci. Dept., Bilkent University, Ankara www: http://www.cs.bilkent.edu.tr/~erayo GPG public key fingerprint: 360C 852F 88B0 A745 F31B EA0F 7C07 AE16 874D 539C
#include <cmath> #include <iostream> int main() { float a = trunc(3.5); std::cout << a << std::endl; return 0; }