def geterr():
maskvalue = umath.geterrobj()[<NUM_LIT:1>]<EOL>mask = <NUM_LIT:7><EOL>res = {}<EOL>val = (maskvalue >> SHIFT_DIVIDEBYZERO) & mask<EOL>res['<STR_LIT>'] = _errdict_rev[val]<EOL>val = (maskvalue >> SHIFT_OVERFLOW) & mask<EOL>res['<STR_LIT>'] = _errdict_rev[val]<EOL>val = (maskvalue >> SHIFT_UNDERFLOW) & mask<EOL>res['<STR_LIT>'] = _errdict_rev[val]<EOL>val = (maskvalue >> SHIFT_INVALID) & mask<EOL>res['<STR_LIT>'] = _errdict_rev[val]<EOL>return res<EOL>
Get the current way of handling floating-point errors.

Returns
-------
res : dict
    A dictionary with keys "divide", "over", "under", and "invalid",
    whose values are from the strings "ignore", "print", "log", "warn",
    "raise", and "call". The keys represent possible floating-point
    exceptions, and the values define how these exceptions are handled.

See Also
--------
geterrcall, seterr, seterrcall

Notes
-----
For complete documentation of the types of floating-point exceptions and
treatment options, see `seterr`.

Examples
--------
>>> np.geterr()
{'over': 'warn', 'divide': 'warn', 'invalid': 'warn',
'under': 'ignore'}
>>> np.arange(3.) / np.arange(3.)
array([ NaN,   1.,   1.])

>>> oldsettings = np.seterr(all='warn', over='raise')
>>> np.geterr()
{'over': 'raise', 'divide': 'warn', 'invalid': 'warn', 'under': 'warn'}
>>> np.arange(3.) / np.arange(3.)
__main__:1: RuntimeWarning: invalid value encountered in divide
array([ NaN,   1.,   1.])