static enum ExprKind makeBinaryExprKind(enum TokenKind tokenKind) { switch (tokenKind) { case ASTERISK: return EK_MUL; case EQUAL2: return EK_EQUAL; case NOT_EQUAL: return EK_NOT_EQUAL; case GREATER: return EK_GREATER; case GREATER_EQUAL: return EK_GREATER_EQUAL; case LESS: return EK_LESS; case LESS_EQUAL: return EK_LESS_EQUAL; case MINUS: return EK_SUB; case PERCENT: return EK_MOD; case PLUS: return EK_ADD; case SLASH: return EK_DIV; default: fprintf(stderr, "internal error in makeBinaryExprKind (tokenKind = %d)", tokenKind); finalizeExit(1); return 0; } }