static inline int psi_calc_oper(token_t op1, token_t op2) { if (PSI_T_LPAREN == op2) { return -1; } else if (PSI_T_LPAREN == op1) { return 1; } else if (op1 == op2) { return 0; } else if (!op1) { return 1; } else if (!op2) { return -1; } switch (op1) { $ops1) : ?> case PSI_T_: switch (op2) { $ops2) : ?> case PSI_T_: return $prec2?1:-1)?>; default: assert(0); break; } break; default: assert(0); break; } return 0; }