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 />);
  }, []);
};
```
getConstructionExpressionType(node.left) != null ||
        getConstructionExpressionType(node.right) != null
      ) {
        return 'logical expression';
      }
      return null;
    case 'JSXFragment':
      return 'JSX fragment';
    case 'JSXElement':
      return 'JSX element';
    case 'AssignmentExpression':
      if (getConstructionExpressionType(node.right) != null) {
        return 'assignment expression';
      }
      return null;
    case 'NewExpression':
      return 'object construction';
    case 'Literal':
      if (node.value instanceof RegExp) {
        return 'regular expression';
      }
      return null;
    case 'TypeCastExpression':
      return getConstructionExpressionType(node.expression);
    case 'TSAsExpression':
      return getConstructionExpressionType(node.expression);
  }
  return null;
}
function scanForConstructions({