eslint-plugin-react-hooks version: 4.2.0

## Steps To Reproduce

I know it shouldn't exist in production code, but it's annoying while editing some files.

```js
import React, { useEffect } from "react";

const App = () => {
  useEffect(); // <-
  return null;
};

export default App;
```

Link to code example: https://codesandbox.io/s/polished-sun-3wr27?file=/src/App.js

## The current behavior

ESLint crashed.

```
TypeError: Cannot read property 'type' of undefined
```

## The expected behavior

ESLint doesn't crash but reports an error instead.
setTimeout(() => {
                myRef.current.removeEventListener('mousemove', handleMouse);
                myRef.current.removeEventListener('mousein', handleMouse);
              });
            }
          }, [myRef]);
        }
      `,
      errors: [
        {
          message:
            `The ref value 'myRef.current' will likely have changed by the time ` +
            `this effect cleanup function runs. If this ref points to a node ` +
            `rendered by React, copy 'myRef.current' to a variable inside the effect, ` +
            `and use that variable in the cleanup function.`,
          suggestions: undefined,
        },
      ],
    },
    {
      code: normalizeIndent`
        function useMyThing(myRef, active) {
          useEffect(() => {
            const handleMove = () => {};
            if (active) {
              myRef.current.addEventListener('mousemove', handleMove);
              return function() {
                setTimeout(() => {
                  myRef.current.removeEventListener('mousemove', handleMove);
                });