// This case shouldn't happen, based on what I see in Subscript
// but just in case it happens sometime in the future
PyErr_Format(PyExc_RuntimeError,"__getitem__ must return a CudaNdarray that refers to the original CudaNdarray, not a copy. rval.base=%p o.base=%p o=%p",
PyErr_Format(PyExc_NotImplementedError,"CudaNdarray.__setitem__: need same number of dims. destination nd=%d, source nd=%d. No broadcasting implemented.",
PyErr_Format(PyExc_NotImplementedError,"CudaNdarray.__setitem__: need same number of dims. destination nd=%d, source nd=%d. broadcasting implemented only for zeroing values from python scalar.",
// This case shouldn't happen, based on what I see in Subscript
PyErr_SetString(PyExc_TypeError,"CudaNdarray.__setitem__: left must be a CudaNdarrays and right must be a CudaNdarrays, an ndarray or a python scalar of value 0.");
// but just in case it happens sometime in the future
PyErr_Format(PyExc_RuntimeError,"__getitem__ must return a CudaNdarray that refers to the original CudaNdarray, not a copy. rval.base=%p o.base=%p o=%p",