### Version 2.6.10 ### Reproduction link [https://codesandbox.io/s/kk445knpx3](https://codesandbox.io/s/kk445knpx3) ### Steps to reproduce In the `Child.vue` we have a slot with a default slot content. In the `Parent.vue` we override the default content of the child. ### What is expected? IMO the content of the slot in child component should not be evaluated since the content provided from the parent will be used. ### What is actually happening? The content of the parent it renders which is what I expect. The default content of the `Child.vue` it's evaluated even if it not renders. That's why you see in the console: `Cannot read property 'length' of null` --- Maybe that's not a bug and instead it's the intentional behavior, but it doesn't make sense to me, to evaluate something that will not render. <!-- generated by vue-issues. DO NOT REMOVE -->