]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
kconfig: remove E_LIST expression type
authorMasahiro Yamada <masahiroy@kernel.org>
Tue, 18 Jun 2024 10:35:31 +0000 (19:35 +0900)
committerMasahiro Yamada <masahiroy@kernel.org>
Mon, 15 Jul 2024 16:08:37 +0000 (01:08 +0900)
E_LIST was preveously used to form an expression tree consisting of
choice members.

It is no longer used.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
scripts/kconfig/expr.c
scripts/kconfig/expr.h
scripts/kconfig/symbol.c

index bea82d5cac83545d21182670ec2b02c8c912ba3b..6d4b5a5a1e6247c20ab1023eadf0be019b313b8a 100644 (file)
@@ -90,7 +90,6 @@ struct expr *expr_copy(const struct expr *org)
                break;
        case E_AND:
        case E_OR:
-       case E_LIST:
                e->left.expr = expr_copy(org->left.expr);
                e->right.expr = expr_copy(org->right.expr);
                break;
@@ -286,7 +285,6 @@ int expr_eq(struct expr *e1, struct expr *e2)
                expr_free(e2);
                trans_count = old_count;
                return res;
-       case E_LIST:
        case E_RANGE:
        case E_NONE:
                /* panic */;
@@ -676,7 +674,6 @@ struct expr *expr_transform(struct expr *e)
        case E_LTH:
        case E_UNEQUAL:
        case E_SYMBOL:
-       case E_LIST:
                break;
        default:
                e->left.expr = expr_transform(e->left.expr);
@@ -947,7 +944,6 @@ struct expr *expr_trans_compare(struct expr *e, enum expr_type type, struct symb
                break;
        case E_SYMBOL:
                return expr_alloc_comp(type, e->left.sym, sym);
-       case E_LIST:
        case E_RANGE:
        case E_NONE:
                /* panic */;
@@ -1097,10 +1093,6 @@ static int expr_compare_type(enum expr_type t1, enum expr_type t2)
                if (t2 == E_OR)
                        return 1;
                /* fallthrough */
-       case E_OR:
-               if (t2 == E_LIST)
-                       return 1;
-               /* fallthrough */
        default:
                break;
        }
@@ -1173,13 +1165,6 @@ void expr_print(struct expr *e,
                fn(data, NULL, " && ");
                expr_print(e->right.expr, fn, data, E_AND);
                break;
-       case E_LIST:
-               fn(data, e->right.sym, e->right.sym->name);
-               if (e->left.expr) {
-                       fn(data, NULL, " ^ ");
-                       expr_print(e->left.expr, fn, data, E_LIST);
-               }
-               break;
        case E_RANGE:
                fn(data, NULL, "[");
                fn(data, e->left.sym, e->left.sym->name);
index 58fd4c8c3762bbd3198420dff490f4e1e33368de..8849a243b5e7716c7692c233bf1832d110976774 100644 (file)
@@ -26,7 +26,7 @@ typedef enum tristate {
 enum expr_type {
        E_NONE, E_OR, E_AND, E_NOT,
        E_EQUAL, E_UNEQUAL, E_LTH, E_LEQ, E_GTH, E_GEQ,
-       E_LIST, E_SYMBOL, E_RANGE
+       E_SYMBOL, E_RANGE
 };
 
 union expr_data {
index cf682a8a3f1ebf8b616133d7c73e25d100dff18a..e5441378c4b0dcfcdfac1072a7a468b3f4bebf03 100644 (file)
@@ -1316,8 +1316,7 @@ struct symbol *sym_check_deps(struct symbol *sym)
 
 struct symbol *prop_get_symbol(struct property *prop)
 {
-       if (prop->expr && (prop->expr->type == E_SYMBOL ||
-                          prop->expr->type == E_LIST))
+       if (prop->expr && prop->expr->type == E_SYMBOL)
                return prop->expr->left.sym;
        return NULL;
 }