Skip to content

poor error message when dtype is too small for scalar multiplication #12296

@lucascolley

Description

@lucascolley

Minimal Complete Verifiable Example:

In [12]: import dask.array as da

In [13]: da.ones(2, dtype=da.int8) * 2
Out[13]: dask.array<mul, shape=(2,), dtype=int8, chunksize=(2,), chunktype=numpy.ndarray>

In [14]: da.ones(2, dtype=da.int8) * 8
Out[14]: dask.array<mul, shape=(2,), dtype=int8, chunksize=(2,), chunktype=numpy.ndarray>

In [15]: da.ones(2, dtype=da.int8) * 128
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
Cell In[15], line 1
----> 1 da.ones(2, dtype=da.int8) * 128

TypeError: unsupported operand type(s) for *: 'Array' and 'int'

NumPy does better:

In [1]: import numpy as np

In [2]: np.ones(2, dtype=np.int8) * 128
---------------------------------------------------------------------------
OverflowError                             Traceback (most recent call last)
Cell In[2], line 1
----> 1 np.ones(2, dtype=np.int8) * 128

OverflowError: Python integer 128 out of bounds for int8

Environment:

Environment: array-api-cpu
Name                     Version     Build                               Size  Kind   Source
_openmp_mutex            4.5         7_kmp_llvm                      8.13 KiB  conda  https://prefix.dev/conda-forge
array-api-strict         2.4.1       pyhe01879c_0                   61.06 KiB  conda  https://prefix.dev/conda-forge
asttokens                3.0.1       pyhd8ed1ab_0                   28.12 KiB  conda  https://prefix.dev/conda-forge
asv                      0.6.4       py313hb4b7877_2               325.77 KiB  conda  https://prefix.dev/conda-forge
asv_runner               0.2.1       pyhd8ed1ab_0                   42.70 KiB  conda  https://prefix.dev/conda-forge
attrs                    25.4.0      pyhcf101f3_1                   63.24 KiB  conda  https://prefix.dev/conda-forge
backports.zstd           1.2.0       py313hf42fe89_0               238.96 KiB  conda  https://prefix.dev/conda-forge
blas-devel               3.11.0      4_h11c0a38_openblas            18.27 KiB  conda  https://prefix.dev/conda-forge
brotli-python            1.2.0       py313hde1f3bb_1               351.14 KiB  conda  https://prefix.dev/conda-forge
bzip2                    1.0.8       hd037594_8                    122.13 KiB  conda  https://prefix.dev/conda-forge
c-ares                   1.34.6      hc919400_0                    176.10 KiB  conda  https://prefix.dev/conda-forge
ca-certificates          2025.11.12  hbd8a1cb_0                    148.86 KiB  conda  https://prefix.dev/conda-forge
certifi                  2025.11.12  pyhd8ed1ab_0                  153.45 KiB  conda  https://prefix.dev/conda-forge
charset-normalizer       3.4.4       pyhd8ed1ab_0                   49.77 KiB  conda  https://prefix.dev/conda-forge
click                    8.2.1       pyh707e725_0                   85.69 KiB  conda  https://prefix.dev/conda-forge
cloudpickle              3.1.2       pyhcf101f3_1                   26.71 KiB  conda  https://prefix.dev/conda-forge
colorama                 0.4.6       pyhd8ed1ab_1                   26.38 KiB  conda  https://prefix.dev/conda-forge
coverage                 7.13.0      py313h7d74516_0               380.53 KiB  conda  https://prefix.dev/conda-forge
cpython                  3.13.11     py313hd8ed1ab_100              47.24 KiB  conda  https://prefix.dev/conda-forge
dask-core                2025.11.0   pyhcf101f3_0                    1.01 MiB  conda  https://prefix.dev/conda-forge
decorator                5.2.1       pyhd8ed1ab_0                   13.80 KiB  conda  https://prefix.dev/conda-forge
distlib                  0.4.0       pyhd8ed1ab_0                  269.18 KiB  conda  https://prefix.dev/conda-forge
exceptiongroup           1.3.1       pyhd8ed1ab_0                   20.83 KiB  conda  https://prefix.dev/conda-forge
execnet                  2.1.2       pyhd8ed1ab_0                   38.57 KiB  conda  https://prefix.dev/conda-forge
executing                2.2.1       pyhd8ed1ab_0                   30.03 KiB  conda  https://prefix.dev/conda-forge
filelock                 3.20.3      pyhd8ed1ab_0                   18.22 KiB  conda  https://prefix.dev/conda-forge
fmt                      12.0.0      h669d743_0                    175.51 KiB  conda  https://prefix.dev/conda-forge
fsspec                   2025.12.0   pyhd8ed1ab_0                  143.94 KiB  conda  https://prefix.dev/conda-forge
gmp                      6.3.0       h7bae524_2                    356.63 KiB  conda  https://prefix.dev/conda-forge
gmpy2                    2.2.1       py313hc1c22ca_2               159.08 KiB  conda  https://prefix.dev/conda-forge
h2                       4.3.0       pyhcf101f3_0                   93.72 KiB  conda  https://prefix.dev/conda-forge
hpack                    4.1.0       pyhd8ed1ab_0                   30.01 KiB  conda  https://prefix.dev/conda-forge
hyperframe               6.1.0       pyhd8ed1ab_0                   16.99 KiB  conda  https://prefix.dev/conda-forge
hypothesis               6.148.7     pyha770c72_0                  373.81 KiB  conda  https://prefix.dev/conda-forge
idna                     3.11        pyhd8ed1ab_0                   49.53 KiB  conda  https://prefix.dev/conda-forge
importlib-metadata       8.7.0       pyhe01879c_1                   33.83 KiB  conda  https://prefix.dev/conda-forge
iniconfig                2.3.0       pyhd8ed1ab_0                   13.07 KiB  conda  https://prefix.dev/conda-forge
ipython                  9.9.0       pyh53cf698_0                  631.10 KiB  conda  https://prefix.dev/conda-forge
ipython_pygments_lexers  1.1.1       pyhd8ed1ab_0                   13.67 KiB  conda  https://prefix.dev/conda-forge
jax                      0.7.2       pyhd8ed1ab_0                    1.78 MiB  conda  https://prefix.dev/conda-forge
jaxlib                   0.7.2       cpu_py313hf0aba26_2            56.86 MiB  conda  https://prefix.dev/conda-forge
jedi                     0.19.2      pyhd8ed1ab_1                  823.87 KiB  conda  https://prefix.dev/conda-forge
jinja2                   3.1.6       pyhcf101f3_1                  117.86 KiB  conda  https://prefix.dev/conda-forge
json5                    0.13.0      pyhd8ed1ab_0                   33.22 KiB  conda  https://prefix.dev/conda-forge
libabseil                20250512.1  cxx17_hd41c47c_0                1.12 MiB  conda  https://prefix.dev/conda-forge
libblas                  3.11.0      4_h51639a9_openblas            18.33 KiB  conda  https://prefix.dev/conda-forge
libcblas                 3.11.0      4_hb0561ab_openblas            18.28 KiB  conda  https://prefix.dev/conda-forge
libcxx                   21.1.7      hf598326_0                    555.39 KiB  conda  https://prefix.dev/conda-forge
libexpat                 2.7.3       haf25636_0                     66.21 KiB  conda  https://prefix.dev/conda-forge
libffi                   3.5.2       he5f378a_0                     39.31 KiB  conda  https://prefix.dev/conda-forge
libgcc                   15.2.0      hcbb3090_16                   392.77 KiB  conda  https://prefix.dev/conda-forge
libgfortran              15.2.0      h07b0088_16                   135.38 KiB  conda  https://prefix.dev/conda-forge
libgfortran5             15.2.0      hdae7583_16                   584.27 KiB  conda  https://prefix.dev/conda-forge
libgrpc                  1.73.1      h3063b79_1                      5.13 MiB  conda  https://prefix.dev/conda-forge
liblapack                3.11.0      4_hd9741b5_openblas            18.32 KiB  conda  https://prefix.dev/conda-forge
liblapacke               3.11.0      4_h1b118fd_openblas            18.33 KiB  conda  https://prefix.dev/conda-forge
liblzma                  5.8.1       h39f12f2_2                     90.12 KiB  conda  https://prefix.dev/conda-forge
libmpdec                 4.0.0       h5505292_0                     70.15 KiB  conda  https://prefix.dev/conda-forge
libopenblas              0.3.30      openmp_ha158390_3               4.09 MiB  conda  https://prefix.dev/conda-forge
libprotobuf              6.31.1      h658db43_2                      2.84 MiB  conda  https://prefix.dev/conda-forge
libre2-11                2025.11.05  h91c62da_0                    161.71 KiB  conda  https://prefix.dev/conda-forge
libsqlite                3.51.1      h9a5124b_0                    885.05 KiB  conda  https://prefix.dev/conda-forge
libtorch                 2.9.1       cpu_generic_h040b7fb_1         29.13 MiB  conda  https://prefix.dev/conda-forge
libuv                    1.51.0      h6caf38d_1                    411.32 KiB  conda  https://prefix.dev/conda-forge
libzlib                  1.3.1       h8359307_2                     45.35 KiB  conda  https://prefix.dev/conda-forge
llvm-openmp              21.1.7      h4a912ad_0                    279.42 KiB  conda  https://prefix.dev/conda-forge
llvmlite                 0.46.0      py313he297ed2_0                23.21 MiB  conda  https://prefix.dev/conda-forge
locket                   1.0.0       pyhd8ed1ab_0                    8.06 KiB  conda  https://prefix.dev/conda-forge
markupsafe               3.0.3       py313h7d74516_0                25.17 KiB  conda  https://prefix.dev/conda-forge
marray-python            0.0.12      pyh332efcf_0                   27.58 KiB  conda  https://prefix.dev/conda-forge
matplotlib-inline        0.2.1       pyhd8ed1ab_0                   14.82 KiB  conda  https://prefix.dev/conda-forge
ml_dtypes                0.5.4       np2py313h9ce8dcc_0            236.89 KiB  conda  https://prefix.dev/conda-forge
mpc                      1.3.1       h8f1351a_1                    102.31 KiB  conda  https://prefix.dev/conda-forge
mpfr                     4.2.1       hb693164_3                    337.42 KiB  conda  https://prefix.dev/conda-forge
mpmath                   1.3.0       pyhd8ed1ab_1                  429.40 KiB  conda  https://prefix.dev/conda-forge
ncurses                  6.5         h5e97a16_3                    778.35 KiB  conda  https://prefix.dev/conda-forge
networkx                 3.6.1       pyhcf101f3_0                    1.51 MiB  conda  https://prefix.dev/conda-forge
nomkl                    1.0         h5ca1d4c_0                      3.75 KiB  conda  https://prefix.dev/conda-forge
numba                    0.63.1      py313ha873477_0                 5.47 MiB  conda  https://prefix.dev/conda-forge
numpy                    2.3.5       py313h9771d21_0                 6.48 MiB  conda  https://prefix.dev/conda-forge
openblas                 0.3.30      openmp_hea878ba_3               3.00 MiB  conda  https://prefix.dev/conda-forge
openssl                  3.6.0       h5503f6c_0                      2.96 MiB  conda  https://prefix.dev/conda-forge
opt_einsum               3.4.0       pyhd8ed1ab_1                   61.01 KiB  conda  https://prefix.dev/conda-forge
optree                   0.18.0      py313ha61f8ec_0               390.88 KiB  conda  https://prefix.dev/conda-forge
packaging                25.0        pyh29332c3_1                   61.01 KiB  conda  https://prefix.dev/conda-forge
parso                    0.8.5       pyhcf101f3_0                   79.65 KiB  conda  https://prefix.dev/conda-forge
partd                    1.4.2       pyhd8ed1ab_0                   20.39 KiB  conda  https://prefix.dev/conda-forge
pexpect                  4.9.0       pyhd8ed1ab_1                   52.31 KiB  conda  https://prefix.dev/conda-forge
platformdirs             4.5.1       pyhcf101f3_0                   23.36 KiB  conda  https://prefix.dev/conda-forge
pluggy                   1.6.0       pyhf9edf01_1                   25.27 KiB  conda  https://prefix.dev/conda-forge
pooch                    1.8.2       pyhd8ed1ab_3                   54.29 KiB  conda  https://prefix.dev/conda-forge
prompt-toolkit           3.0.52      pyha770c72_0                  267.51 KiB  conda  https://prefix.dev/conda-forge
ptyprocess               0.7.0       pyhd8ed1ab_1                   19.00 KiB  conda  https://prefix.dev/conda-forge
pure_eval                0.2.3       pyhd8ed1ab_1                   16.28 KiB  conda  https://prefix.dev/conda-forge
pybind11                 3.0.1       pyh7a1b43c_0                  227.42 KiB  conda  https://prefix.dev/conda-forge
pybind11-abi             11          hc364b38_1                     14.33 KiB  conda  https://prefix.dev/conda-forge
pybind11-global          3.0.1       pyhc7ab6ef_0                  223.51 KiB  conda  https://prefix.dev/conda-forge
pygments                 2.19.2      pyhd8ed1ab_0                  868.44 KiB  conda  https://prefix.dev/conda-forge
pympler                  1.1         pyhd8ed1ab_1                  142.90 KiB  conda  https://prefix.dev/conda-forge
pysocks                  1.7.1       pyha55dd90_7                   20.59 KiB  conda  https://prefix.dev/conda-forge
pytest                   9.0.2       pyhcf101f3_0                  292.56 KiB  conda  https://prefix.dev/conda-forge
pytest-cov               7.0.0       pyhcf101f3_1                   28.34 KiB  conda  https://prefix.dev/conda-forge
pytest-timeout           2.4.0       pyhd8ed1ab_0                   19.67 KiB  conda  https://prefix.dev/conda-forge
pytest-xdist             3.8.0       pyhd8ed1ab_0                   38.38 KiB  conda  https://prefix.dev/conda-forge
python                   3.13.11     hfc2f54d_100_cp313             12.32 MiB  conda  https://prefix.dev/conda-forge
python_abi               3.13        8_cp313                         6.84 KiB  conda  https://prefix.dev/conda-forge
pytorch                  2.9.1       cpu_generic_py313_h6bf06e3_1   23.18 MiB  conda  https://prefix.dev/conda-forge
pytorch-cpu              2.9.1       cpu_generic_hcc7c195_1         49.13 KiB  conda  https://prefix.dev/conda-forge
pyyaml                   6.0.3       py313h7d74516_0               187.14 KiB  conda  https://prefix.dev/conda-forge
re2                      2025.11.05  h64b956e_0                     26.78 KiB  conda  https://prefix.dev/conda-forge
readline                 8.2         h1d1bf99_2                    246.44 KiB  conda  https://prefix.dev/conda-forge
requests                 2.32.5      pyhd8ed1ab_0                   57.87 KiB  conda  https://prefix.dev/conda-forge
scipy                    1.16.3      py313h0d10b07_1                13.23 MiB  conda  https://prefix.dev/conda-forge
setuptools               80.9.0      pyhff2d567_0                  731.24 KiB  conda  https://prefix.dev/conda-forge
sleef                    3.9.0       hb028509_0                    573.27 KiB  conda  https://prefix.dev/conda-forge
sortedcontainers         2.4.0       pyhd8ed1ab_1                   27.99 KiB  conda  https://prefix.dev/conda-forge
sparse                   0.17.0      pyhcf101f3_0                  118.64 KiB  conda  https://prefix.dev/conda-forge
spin                     0.15        pyh8f84b5b_0                   31.71 KiB  conda  https://prefix.dev/conda-forge
stack_data               0.6.3       pyhd8ed1ab_1                   26.36 KiB  conda  https://prefix.dev/conda-forge
sympy                    1.14.0      pyh2585a3b_105                  4.40 MiB  conda  https://prefix.dev/conda-forge
tabulate                 0.9.0       pyhcf101f3_3                   39.37 KiB  conda  https://prefix.dev/conda-forge
threadpoolctl            3.6.0       pyhecae5ae_0                   23.31 KiB  conda  https://prefix.dev/conda-forge
tk                       8.6.13      h892fb3f_3                      2.98 MiB  conda  https://prefix.dev/conda-forge
tomli                    2.3.0       pyhcf101f3_0                   20.48 KiB  conda  https://prefix.dev/conda-forge
toolz                    1.1.0       pyhd8ed1ab_1                   52.71 KiB  conda  https://prefix.dev/conda-forge
traitlets                5.14.3      pyhd8ed1ab_1                  107.47 KiB  conda  https://prefix.dev/conda-forge
typing-extensions        4.15.0      h396c80c_0                     89.24 KiB  conda  https://prefix.dev/conda-forge
typing_extensions        4.15.0      pyhcf101f3_0                   50.48 KiB  conda  https://prefix.dev/conda-forge
tzdata                   2025b       h78e105d_0                    120.09 KiB  conda  https://prefix.dev/conda-forge
urllib3                  2.6.1       pyhd8ed1ab_0                  100.41 KiB  conda  https://prefix.dev/conda-forge
virtualenv               20.36.1     pyhd8ed1ab_0                    4.20 MiB  conda  https://prefix.dev/conda-forge
wcwidth                  0.4.0       pyhd8ed1ab_0                   63.85 KiB  conda  https://prefix.dev/conda-forge
yaml                     0.2.5       h925e9cb_3                     81.43 KiB  conda  https://prefix.dev/conda-forge
zipp                     3.23.0      pyhcf101f3_1                   23.63 KiB  conda  https://prefix.dev/conda-forge
zstd                     1.5.7       hbf9d68e_6                    423.25 KiB  conda  https://prefix.dev/conda-forge

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs triageNeeds a response from a contributor

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions