<div dir="ltr"><div><div><div><div>Hi All,<br><br></div>It turns out that gufuncs will broadcast the last dimension if it is one. For instance, inner1d has signature `(n), (n) -> ()`, yet<br><br><span style="font-family:courier new,monospace">In [27]: inner1d([1,1,1], [1])<br>Out[27]: 3<br><br>In [28]: inner1d([1,1,1], [1,1])<br>---------------------------------------------------------------------------<br>ValueError                                Traceback (most recent call last)<br><ipython-input-28-e53e62e35349> in <module>()<br>----> 1 inner1d([1,1,1], [1,1])<br><br>ValueError: inner1d: Operand 1 has a mismatch in its core dimension 0, with gufunc signature (i),(i)->() (size 2 is different from 3)<br></span><br><br></div>I'd think this is a bug, as the dimensions should match. Note that scalar 1 will be promoted to [1] in this case.<br><br></div>Thoughts?<br><br></div>Chuck<br></div>