```js
  let foo = {}
  useEffect(() => {
    foo.bar.baz = 43;
  }, []);
```

This asks you to include `foo.bar.baz` into deps. But this doesn't make sense, as you write to it. Instead it should ask to include `foo.bar` into array.

If `foo` is a newly created object in render scope then we might additionally nudge you to `useRef` for it instead. Because otherwise it won't be shared between renders.
});
  
  missingDependencies.forEach(key => {
    suggestedDependencies.push(key);
  });
  return {
    suggestedDependencies,
    unnecessaryDependencies,
    duplicateDependencies,
    missingDependencies,
  };
}
function scanForDeclaredBareFunctions({
  declaredDependencies,
  declaredDependenciesNode,
  componentScope,
  scope,
}) {
  const bareFunctions = declaredDependencies
    .map(({key}) => {
      const fnRef = componentScope.set.get(key);
      if (fnRef == null) {
        return null;
      }
      const fnNode = fnRef.defs[0];
      if (fnNode == null) {
        return null;
      }