<p dir="auto">I just noticed that this:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="In [1]: import numpy as np

In [2]: arr = np.zeros((2, 3), dtype=np.int16) + np.int16(3201)

In [3]: arr.T.dot(arr)
Out[3]: 
array([[-19966, -19966, -19966],
       [-19966, -19966, -19966],
       [-19966, -19966, -19966]], dtype=int16)"><pre class="notranslate"><code class="notranslate">In [1]: import numpy as np

In [2]: arr = np.zeros((2, 3), dtype=np.int16) + np.int16(3201)

In [3]: arr.T.dot(arr)
Out[3]: 
array([[-19966, -19966, -19966],
       [-19966, -19966, -19966],
       [-19966, -19966, -19966]], dtype=int16)
</code></pre></div>
<p dir="auto">spits out no warning about integer overflow.  Is it possible to generate one?</p>
<p dir="auto">Simple demo:</p>
<div class="highlight highlight-source-python notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="In [1]: np.uint8(0) - np.uint8(1)
RuntimeWarning: overflow encountered in ubyte_scalars
Out[1]: 255

In [2]: np.uint8(0)[...] - np.uint8(1)[...]
Out[2]: 255"><pre class="notranslate"><span class="pl-v">In</span> [<span class="pl-c1">1</span>]: <span class="pl-s1">np</span>.<span class="pl-en">uint8</span>(<span class="pl-c1">0</span>) <span class="pl-c1">-</span> <span class="pl-s1">np</span>.<span class="pl-en">uint8</span>(<span class="pl-c1">1</span>)
<span class="pl-v">RuntimeWarning</span>: <span class="pl-s1">overflow</span> <span class="pl-s1">encountered</span> <span class="pl-c1">in</span> <span class="pl-s1">ubyte_scalars</span>
<span class="pl-v">Out</span>[<span class="pl-c1">1</span>]: <span class="pl-c1">255</span>

<span class="pl-v">In</span> [<span class="pl-c1">2</span>]: <span class="pl-s1">np</span>.<span class="pl-en">uint8</span>(<span class="pl-c1">0</span>)[...] <span class="pl-c1">-</span> <span class="pl-s1">np</span>.<span class="pl-en">uint8</span>(<span class="pl-c1">1</span>)[...]
<span class="pl-v">Out</span>[<span class="pl-c1">2</span>]: <span class="pl-c1">255</span></pre></div>
<p dir="auto">Should we even warn at all for unsigned integers?</p>