This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: OpenMP vs. <math.h>


On 12/01/2010 13:29, Dave Korn wrote:
Why is the solution to penalise all the correct and valid C++ code out there
instead of to fix the few buggy bits and pieces that don't conform to the
language standard?

Actually, I proposed two solutions to the Cygwin list last week, one of them being to fix the OpenMP headers. But it was pointed out that this would affect all Newlib platforms and apparently does not affect Linux or other platforms which support OpenMP.


But thinking about this further, there's just no way that these macros would ever be safe with C++. Take this for a simple example:

$ cat > log2.cxx <<_EOF_
#include <cmath>
#include <iostream>

int
main(void)
{
    std::cout << ::log2(42) << std::endl;
    return 0;
}
_EOF_

$ g++ -c log2.cxx
log2.cxx: In function ‘int main()’:
log2.cxx:8: error: expected id-expression before ‘(’ token

So this isn't just a problem with OpenMP, this is a potential problem with all C++ code.


Yaakov Cygwin/X


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]