head 1.1; access; symbols; locks; strict; comment @ * @; 1.1 date 2026.11.10.15.43.51; author wiz; state Exp; branches; next ; commitid Qi4Aa60RratbHV2H; desc @@ 1.1 log @libmatheval: update to 1.1.12. Version 1.1.12 * Updated build system to work with current GNU autotools. Guile is needed for test suite only, which now works with Guile 2.0 and later. * Fixed buffer overflows in the Fortran interface and in handling of very long strings (reported by Hongduo Zhao). * Fixed memory leaks on parsing error, and in Flex generated scanner. * Characters not part of the notation are now reported as error, instead of being echoed to standard output. * Fixed wrong simplification of 0^x. * Fixed wrong derivatives of asinh() and acoth() functions. * Inverse hyperbolic functions are calculated by C library, fixing inaccurate results for very small or very large arguments. * Added min(), max() and select() functions. Note that min, max and select therefore can not be used as variable names any more. * Library exports its interface only, so that its internal symbols (including these of Lex and Yacc generated code) do not clash with symbols of program any more. * Fixed compiler warnings and undefined behavior. * Fixed errors in the manual, and added short example at its beginning. @ text @$NetBSD$ From upstream: To avoid xmalloc from the test suite polluting the name space. --- lib/matheval.h.orig 2026-11-10 09:52:12.000000000 +0000 +++ lib/matheval.h @@@@ -24,6 +24,11 @@@@ extern "C" { extern "C" { #endif +/* Library interface is visible, other symbols of library are hidden. */ +#if defined __GNUC__ && __GNUC__ >= 4 +#pragma GCC visibility push(default) +#endif + /* Create evaluator from string representing function. Function returns pointer that should be passed as first argument to all other library functions. If an error occurs, function will @@@@ -82,6 +87,10 @@@@ extern "C" { extern void *evaluator_derivative_x(void *evaluator); extern void *evaluator_derivative_y(void *evaluator); extern void *evaluator_derivative_z(void *evaluator); + +#if defined __GNUC__ && __GNUC__ >= 4 +#pragma GCC visibility pop +#endif #ifdef __cplusplus } @