Just about every time I set up a new `Context.Provider`, I end up accidentally specifying a `values` prop rather than `value`.  While it's a minor error, generally I build the container in which the provider resides and commit it to the code base before I ever use it.  It's only later when I go to use it that I realize I did it again.  Since the `Context.Provider` seems pretty much useless without a `value` prop specified, I'd love it if there was a prop error if it is missing... especially if another prop is defined on the `Context.Provider` instead.
Scheduler.unstable_yieldValue('Child');
        return <span prop="Child" />;
      }
      const children = <Child />;
      function App(props) {
        Scheduler.unstable_yieldValue('App');
        return (
          <Context.Provider value={props.value}>{children}</Context.Provider>
        );
      }
      
      ReactNoop.render(<App value={1} />);
      expect(Scheduler).toFlushAndYield(['App', 'Child']);
      expect(ReactNoop.getChildren()).toEqual([span('Child')]);
      
      ReactNoop.render(<App value={1} />);
      expect(Scheduler).toFlushAndYield([
        'App',
        
      ]);
      expect(ReactNoop.getChildren()).toEqual([span('Child')]);
    });
    it('provider does not bail out if legacy context changed above', () => {
      const Context = React.createContext(0);
      function Child() {
        Scheduler.unstable_yieldValue('Child');
        return <span prop="Child" />;
      }
      const children = <Child />;
      class LegacyProvider extends React.Component {