There are two types of errors in OpenAL: `alc' errors and `al'
errors. `al' errors are context specific and one deep. Only the first
occurring error will be recorded, subsequent errors will not be
recorded. Errors may be retrieved via the `alGetError' call, after
which the error in the current context will be set to `AL_NO_ERROR',
and subsequent errors will again alter the context's error state.
`alc' errors are not context specific, and may be retrieved via the
`alcGetError' call. After a call to `alcGetError', the context-global
error variable is set to `ALC_NO_ERROR'.