# Exceptions

## Base class for signals and conditions of the specification

class `DecimalException` : public std::runtime_error
  explicit `DecimalException`(const std::string &msg)

    Construct a new DecimalException from a string.

## Signals

class `IEEEInvalidOperation` : public DecimalException

class `DivisionByZero` : public DecimalException

class `Overflow` : public DecimalException

class `Underflow` : public DecimalException

class `Subnormal` : public DecimalException

class `Inexact` : public DecimalException

class `Rounded` : public DecimalException

class `Clamped` : public DecimalException

## Conditions

class `InvalidOperation` : public IEEEInvalidOperation

class `ConversionSyntax` : public IEEEInvalidOperation

class `DivisionImpossible` : public IEEEInvalidOperation

class `DivisionUndefined` : public IEEEInvalidOperation

## Other exceptions

class `MallocError` : public DecimalException

class `RuntimeError` : public DecimalException

class `ValueError` : public DecimalException