libmpdec is a C implementation of the General Decimal Arithmetic Specification. The specification defines a general purpose arbitrary precision data type together with rigorously specified functions and rounding behavior. libmpdec conforms - with minor restrictions - to the IEEE 754-2008 Standard for Floating-Point Arithmetic, provided that the appropriate context parameters are set. libmpdec++ has a thread local context for inline operators and other functions that use the implicit context.