We noticed that our app would behave differently during profiling runs and trigger errors. I'm not totally sure what the underlying issue is but I was able to put together a example app to reproduce. As far as I can tell it has to do with how devtools is overriding `console.warn` and `console.error`. In that case `describeNativeComponentFrame()` will call a function component with no args. This works fine as the error is caught in `describeNativeComponentFrame()` but in it looks like a `useEffect()` that accesses those `props` is still triggered and it does not expect `props` to be undefined. 

I realize that having `props` in the dependencies array of the `useEffect` doesn't really make sense but I still think it probably shouldn't error.

React version: 16.13.1
React devtools version: 4.8.2 

## Steps To Reproduce

1. Open link to code example below
2. Click "Open In New Window" from the "Browser" tab
3. Observe a simple app with only `<h1>Hello World</h1>`
3. Open the React devtools Profiler tab
4. Click "Reload and start profiling"
5. Observe an error `Uncaught TypeError: Cannot read property 'foo' of undefined`

Link to code example:

https://codesandbox.io/s/cool-sun-wdrry

## The current behavior

![wdrry csb app_](https://user-images.githubusercontent.com/682132/94301311-5b1b7900-ff38-11ea-9c5d-335e2e6f35b9.png)

## The expected behavior

The app should work as it while not profile. It should render a `<h1>Hello World</h1>`

currentDispatcherRef,
        );
      case BLOCK_NUMBER:
      case BLOCK_SYMBOL_STRING:
        return describeFunctionComponentFrame(
          type._render,
          source,
          ownerFn,
          currentDispatcherRef,
        );
      case LAZY_NUMBER:
      case LAZY_SYMBOL_STRING: {
        const lazyComponent: LazyComponent<any, any> = (type: any);
        const payload = lazyComponent._payload;
        const init = lazyComponent._init;
        try {
          
          return describeUnknownElementTypeFrameInDEV(
            init(payload),
            source,
            ownerFn,
            currentDispatcherRef,
          );
        } catch (x) {}
      }
    }
  }
  return '';
}