This seems to happen when
1. I take a component as a prop
2. I use that component as a JSX constructor in a hook

Minimal repro:
```jsx
export const Foo = ({ Component }) => {
  React.useEffect(() => {
    console.log(<Component />);
  }, []);
};
```

```
    "eslint-plugin-react-hooks": "^4.1.1",
```


---

Interestingly, this does NOT cause the error:
```jsx
export const Foo = ({ component }) => {
  React.useEffect(() => {
    const Component = component;
    console.log(<Component />);
  }, []);
};
```
return {
      isUsed: false, 
      isSatisfiedRecursively: false, 
      isSubtreeUsed: false, 
      children: new Map(), 
    };
  }
  
  
  dependencies.forEach((_, key) => {
    const node = getOrCreateNodeByPath(depTree, key);
    node.isUsed = true;
    markAllParentsByPath(depTree, key, parent => {
      parent.isSubtreeUsed = true;
    });
  });
  
  
  declaredDependencies.forEach(({key}) => {
    const node = getOrCreateNodeByPath(depTree, key);
    node.isSatisfiedRecursively = true;
  });
  stableDependencies.forEach(key => {
    const node = getOrCreateNodeByPath(depTree, key);
    node.isSatisfiedRecursively = true;
  });
  
  function getOrCreateNodeByPath(rootNode, path) {