{"ast_node_type":"other","tokens":[{"end":67,"kind":"keyword","start":0,"text":"if"}]}
            if a_type.is_unsigned(self) && b_type.is_signed(self) {
            // FIXME(antoyo): remove the casts when libgccjit can shift an unsigned number by an unsigned number.
                let a = self.context.new_cast(self.location, a, b_type);