I cannot reproduce the issue on 1.8.1 and get a tensor in the expected shape:
x = torch.randn(1, 3, 24, 24)
enc_out4 = torch.randn(1, 3, 24, 24)
x = torch.cat((x, enc_out4), dim=1)
print(x.shape)
> torch.Size([1, 6, 24, 24])
print(type(x))
> <class 'torch.Tensor'>

EDIT: I just re-checked your code and you are indeed manually creating the tuple by adding comma at the end in:
x = torch.cat((x, enc_out4), dim=1),