text: Title: In certain situations, `setdefault` of a Dict returns an incorrect value.
  Body: The `example` function in the following code is expected to return `DictType[int64,array(float64, 1d, A)]<iv=None>({1: [1000. 0.]})`, but instead, it returns `DictType[int64,array(float64, 1d, A)]<iv=None>({1: [0. 0.]})`. The issue is resolved when the line `b = {i: 1 for i in n}` is removed.
  
  The version of `numba` being used is 0.60.0.
  
  ```python
  import numpy as np
  import numba
  from numba.core import types
  
  @numba.njit
  def example():
      a = numba.typed.Dict.empty(key_type=types.int64, value_type=types.float64[:])
      b = numba.typed.Dict.empty(key_type=types.int64, value_type=types.int64)
      n = np.array([1,2,3])
      s = a.setdefault(1, np.array([0., 0.]))
      s[0] += 1000.
      s[1] = 0.
      b = {i: 1 for i in n}
      return a
  ```