using same builder for building expression and function to fix broken ir code