|
|
|
@ -400,18 +400,10 @@ void sym_calc_value(struct symbol *sym) |
|
|
|
|
} |
|
|
|
|
calc_newval: |
|
|
|
|
if (sym->dir_dep.tri == no && sym->rev_dep.tri != no) { |
|
|
|
|
struct expr *e; |
|
|
|
|
e = expr_simplify_unmet_dep(sym->rev_dep.expr, |
|
|
|
|
sym->dir_dep.expr); |
|
|
|
|
fprintf(stderr, "warning: ("); |
|
|
|
|
expr_fprint(e, stderr); |
|
|
|
|
fprintf(stderr, ") selects %s which has unmet direct dependencies (", |
|
|
|
|
sym->name); |
|
|
|
|
expr_fprint(sym->dir_dep.expr, stderr); |
|
|
|
|
fprintf(stderr, ")\n"); |
|
|
|
|
expr_free(e); |
|
|
|
|
newval.tri = no; |
|
|
|
|
} else { |
|
|
|
|
newval.tri = EXPR_OR(newval.tri, sym->rev_dep.tri); |
|
|
|
|
} |
|
|
|
|
newval.tri = EXPR_OR(newval.tri, sym->rev_dep.tri); |
|
|
|
|
} |
|
|
|
|
if (newval.tri == mod && sym_get_type(sym) == S_BOOLEAN) |
|
|
|
|
newval.tri = yes; |
|
|
|
|