muparser v2.3.0 Release Notes
Release Date: 2020-06-13 // almost 4 years ago-
๐ Changes:
- ๐ using OpenMP is now the default settings for cmake based builds
- โ added optimization for trivial expressions. (Expressions whose RPN only has a single entry)
- introduced a maximum length for expressions (5000 Character)
- introduced a maximum length for identifiers (100 Characters)
- removed the MUP_MATH_EXCEPTION macro and related functionality. (C++ exceptions for divide by zero or sqrt of a negative number are no longer supported)
- โ removed ParserStack.h (replaced with std::stack)
- โ removed macros for defining E and PI (replaced with a static constants)
- ๐ the MUP_ASSERT macro is no longer removed in release builds for better protection against segmentation faults
๐ Security Fixes:
๐ The issues following issues were fixed. They are present in previous stable releases.
- Prevented multiple access violations for malformed expressions with if then else and functions taking multiple arguments like "sum(0?1,2,3,4:5)"
- โ Added additional runtime checks for release builds to prevent segmentation faults for invalid expressions
๐ Bugfixes:
- ๐ Fixed an issue where the bulk mode could hang on GCC/CLANG builds due to OpenMP chunksize dropping below 1.