An abstract invocation exception.
This exception is expected to be thrown when the parameters of the call are incorrect, or the caller does not obey calling semantics (e.g., wrong invocation order).