E_NOT
if (t2 == E_NOT)
case E_NOT:
case E_NOT:
expr_print(e->left.expr, fn, data, E_NOT);
case E_NOT:
if (e1->type != E_EQUAL && e1->type != E_UNEQUAL && e1->type != E_SYMBOL && e1->type != E_NOT)
if (e2->type != E_EQUAL && e2->type != E_UNEQUAL && e2->type != E_SYMBOL && e2->type != E_NOT)
if (e1->type == E_NOT) {
if (e2->type == E_NOT) {
if ((e1->type == E_NOT && e1->left.expr->type == E_SYMBOL && e2->type == E_SYMBOL) ||
(e2->type == E_NOT && e2->left.expr->type == E_SYMBOL && e1->type == E_SYMBOL))
if (e1->type != E_EQUAL && e1->type != E_UNEQUAL && e1->type != E_SYMBOL && e1->type != E_NOT)
if (e2->type != E_EQUAL && e2->type != E_UNEQUAL && e2->type != E_SYMBOL && e2->type != E_NOT)
if (e1->type == E_NOT) {
if (e2->type == E_NOT) {
e = expr_alloc_one(E_NOT, expr_alloc_symbol(e->left.sym));
e = expr_alloc_one(E_NOT, e->left.expr);
case E_NOT:
case E_NOT:
e = expr_alloc_and(expr_alloc_one(E_NOT, e->left.expr->left.expr),
expr_alloc_one(E_NOT, e->left.expr->right.expr));
e = expr_alloc_or(expr_alloc_one(E_NOT, e->left.expr->left.expr),
expr_alloc_one(E_NOT, e->left.expr->right.expr));
case E_NOT:
e = expr_alloc_one(E_NOT, e);
e = expr_alloc_one(E_NOT, e);
e = expr_alloc_one(E_NOT, e);
case E_NOT:
return expr_alloc_one(E_NOT, e);
return expr_alloc_one(E_NOT, e);
case E_NOT:
case E_NOT:
e = expr_alloc_one(E_NOT, rewrite_m(e->left.expr));
| T_NOT expr { $$ = expr_alloc_one(E_NOT, $2); }
case E_NOT: