Package: libc6-dev Version: 2.3.2-3

Save the following program as "math.cpp"

/* snip */
#include <math.h>

int main(int,char **)
{
  return 0;
}
/* snip */

then invoke the compiler as follows:
$ g++-3.3 -Wall -W -pedantic -O3 -ffast-math math.cpp

Result is:

In file included from /usr/include/math.h:362,
from math.cpp:6:
/usr/include/bits/mathinline.h: In function `long double __expm1l(long double)
':
/usr/include/bits/mathinline.h:385: error: ISO C++ forbids omitting the middle
term of a ?: expression
/usr/include/bits/mathinline.h: In function `double expm1(double)':
/usr/include/bits/mathinline.h:536: error: ISO C++ forbids omitting the middle
term of a ?: expression
/usr/include/bits/mathinline.h: In function `float expm1f(float)':
/usr/include/bits/mathinline.h:536: error: ISO C++ forbids omitting the middle
term of a ?: expression
/usr/include/bits/mathinline.h: In function `long double expm1l(long double)':
/usr/include/bits/mathinline.h:536: error: ISO C++ forbids omitting the middle
term of a ?: expression


Thus, the compiler cannot compile the program in question since the math.h definitions conflict with -pedantic -W -Wall.

I suggest to check for the compiler version and invocation flags (as much as possible) and to bypass the offending lines in math.h.

Compiler version is: 3.3.2-0pre1

Greetings,
        Thomas



--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Reply via email to