MCPcopy Create free account
hub / github.com/Entware/Entware / sym_check_expr_deps

Function sym_check_expr_deps

scripts/config/symbol.c:1064–1096  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1062}
1063
1064static struct symbol *sym_check_expr_deps(struct expr *e)
1065{
1066 struct symbol *sym;
1067
1068 if (!e)
1069 return NULL;
1070 switch (e->type) {
1071 case E_OR:
1072 case E_AND:
1073 sym = sym_check_expr_deps(e->left.expr);
1074 if (sym)
1075 return sym;
1076 return sym_check_expr_deps(e->right.expr);
1077 case E_NOT:
1078 return sym_check_expr_deps(e->left.expr);
1079 case E_EQUAL:
1080 case E_GEQ:
1081 case E_GTH:
1082 case E_LEQ:
1083 case E_LTH:
1084 case E_UNEQUAL:
1085 sym = sym_check_deps(e->left.sym);
1086 if (sym)
1087 return sym;
1088 return sym_check_deps(e->right.sym);
1089 case E_SYMBOL:
1090 return sym_check_deps(e->left.sym);
1091 default:
1092 break;
1093 }
1094 fprintf(stderr, "Oops! How to check %d?\n", e->type);
1095 return NULL;
1096}
1097
1098/* return NULL when dependencies are OK */
1099static struct symbol *sym_check_sym_deps(struct symbol *sym)

Callers 1

sym_check_sym_depsFunction · 0.85

Calls 1

sym_check_depsFunction · 0.85

Tested by

no test coverage detected