Hello, I'm starting a project where a C++ library would have to instantiate a pesistent Perl interpreter.
I found an error that's easily reproductible by trying the example "Persistent Interpreter" from perldoc perlembed, but compiling it with g++ intead of gcc. The error is as follows: In file included from /usr/include/math.h:109, from /usr/local/lib/perl5/5.8.3/i686-linux-thread-multi-64int-ld/CORE/perl.h:2839, from persistent.c:3: /usr/local/lib/perl5/5.8.3/i686-linux-thread-multi-64int-ld/CORE/perl.h:1330: previous declaration of `long double modfl(long double, long double*)' with C++ linkage /usr/include/bits/mathcalls.h:116: conflicts with new declaration with C linkage /usr/include/bits/mathcalls.h:116: declaration of `long double modfl(long double, long double*) throw ()' throws different exceptions /usr/local/lib/perl5/5.8.3/i686-linux-thread-multi-64int-ld/CORE/perl.h:1330: than previous declaration `long double modfl(long double, long double*)' It seems like an absent "extern C" on perl.h, but I'm sure that's some more obvious thing I'm missing. Any ideas? Silvio