Torchscript indexing with tuple/list of tensors

Hello everyone
I was wondering if this kind of indexing (+assignment) is supported in Torchscript. Given the code below:

def test(A, indx):
	A[indx.unbind(-1)] = 0
	return A

my_tensor = torch.ones(3,3, dtype=torch.int32);
my_indx = torch.tensor([[0,0], [1,1], [1,2]])

res_std = test(my_tensor.clone(), my_indx)
scripted_test = torch.jit.script(test)
res_jit = scripted_test(my_tensor.clone(), my_indx)

It generates the following output:

tensor([[0, 1, 1],
        [1, 0, 0],
        [1, 1, 1]], dtype=torch.int32)
def test(A: Tensor,
    indx: Tensor) -> Tensor:
  _0 = torch.tensor(torch.unbind(indx, -1), dtype=4, device=None, requires_grad=False)
  _1 = torch.tensor(0, dtype=ops.prim.dtype(A), device=ops.prim.device(A), requires_grad=False)
  _2 = annotate(List[Optional[Tensor]], [_0])
  _3 = torch.index_put_(A, _2, _1, False)
  return A

RuntimeError: The following operation failed in the TorchScript interpreter.
Traceback of TorchScript (most recent call last):
RuntimeError: Input must be of ints, floats, or bools, got Tensor

First of all, the error message doesn’t tell too much about what is happening. Am I using Torchscript in an unexpected way? Is it because of a bug? Is there some kind of limitation with torchscript indexing? I’ve not managed to find any related issue in pytorch’s github or in this forum. Is there any known workaround?

I think in general happens when slicing a tensor. The following function give the same error message:

def test(A, indx):
	return A[indx.unbind(-1)]

This code have been tested with pytorch 1.8.1 and 1.9 with the same result.

Any suggestions/comment is very much appreciated,
Thanks in advance!