Error propagation of UnaExp::semantic and BinExp::semantic
Remove unused esync member and constructor
optimize UnaExp and BinExp::semantic call
Error propagation of typeCombine
optimize typeCombine call
Directly return the result of incompatibleTypes
Make `UnaExp::semantic` and `BinExp::semantic` abstract.
Merge pull request #3330 from yebblies/esync

[cleanup] Remove unused esync member and constructor
Merge pull request #3327 from 9rnsr/fix_error

More error propagation