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.
}
}
/**
 * Mark a node as either optional or required.
 * Note: If the node argument is an OptionalMemberExpression, it doesn't necessarily mean it is optional.
 * It just means there is an optional member somewhere inside.
 * This particular node might still represent a required member, so check .optional field.
 */
function markNode(node, optionalChains, result) {
  if (optionalChains) {
    if (node.optional) {
      
      if (!optionalChains.has(result)) {
        
        optionalChains.set(result, true);
      }
    } else {
      
      optionalChains.set(result, false);
    }
  }
}
/**
 * Assuming () means the passed node.
 * (foo) -> 'foo'
 * foo(.)bar -> 'foo.bar'
 * foo.bar(.)baz -> 'foo.bar.baz'
 * Otherwise throw.
 */
function analyzePropertyChain(node, optionalChains) {