change AST around binary operation
support `sizeof(type_name)` expression