### Version 3.0.0-alpha.1 ### Reproduction link (None) ### Steps to reproduce Attempt to compile this template: <button @click="foo(); bar()">Click</button> ### What is expected? It should compile without any errors or warnings and when the button is clicked it should call the `foo` and `bar` functions sequentially. ### What is actually happening? The generated code is invalid. --- The following template fragment works in 2.x: <button @click="foo(); bar()">Click</button> The `click` event handler gets compiled into something like this: click: $event => { foo(); bar() } But in `3.0.0-alpha.1` the compiled code is this: click: _cache[0] || (_cache[0] = $event => (foo(); bar())) which is invalid JS syntax. It can be fixed on the user's end by: * Not having code like that in the template and if you need to execute multiple statements it should be extracted into a method. * Using a comma instead of a semicolon. <!-- generated by vue-issues. DO NOT REMOVE -->