Lines Matching refs:prop
31 static void prop_warn(struct property *prop, const char *fmt, ...) in prop_warn() argument
35 fprintf(stderr, "%s:%d:warning: ", prop->file->name, prop->lineno); in prop_warn()
129 struct property *prop = prop_alloc(type, current_entry->sym); in menu_add_prop() local
131 prop->menu = current_entry; in menu_add_prop()
132 prop->expr = expr; in menu_add_prop()
133 prop->visible.expr = dep; in menu_add_prop()
137 prop_warn(prop, "leading whitespace ignored"); in menu_add_prop()
142 prop_warn(prop, "prompt redefined"); in menu_add_prop()
164 prop->visible.expr in menu_add_prop()
165 = expr_alloc_and(prop->visible.expr, in menu_add_prop()
170 current_entry->prompt = prop; in menu_add_prop()
172 prop->text = prompt; in menu_add_prop()
174 return prop; in menu_add_prop()
231 struct property *prop; in sym_check_prop() local
235 for (prop = sym->prop; prop; prop = prop->next) { in sym_check_prop()
236 switch (prop->type) { in sym_check_prop()
239 prop->expr->type != E_SYMBOL) in sym_check_prop()
240 prop_warn(prop, in sym_check_prop()
243 if (prop->expr->type != E_SYMBOL) in sym_check_prop()
245 sym2 = prop_get_symbol(prop); in sym_check_prop()
248 prop_warn(prop, in sym_check_prop()
258 prop_warn(prop, in sym_check_prop()
265 use = prop->type == P_SELECT ? "select" : "imply"; in sym_check_prop()
266 sym2 = prop_get_symbol(prop); in sym_check_prop()
268 prop_warn(prop, in sym_check_prop()
274 prop_warn(prop, in sym_check_prop()
281 prop_warn(prop, "range is only allowed " in sym_check_prop()
283 if (!menu_validate_number(sym, prop->expr->left.sym) || in sym_check_prop()
284 !menu_validate_number(sym, prop->expr->right.sym)) in sym_check_prop()
285 prop_warn(prop, "range is invalid"); in sym_check_prop()
297 struct property *prop; in menu_finalize() local
356 prop = menu->sym->prop; in menu_finalize()
362 prop = menu->prompt; in menu_finalize()
365 for (; prop; prop = prop->next) { in menu_finalize()
366 if (prop->menu != menu) in menu_finalize()
389 dep = rewrite_m(prop->visible.expr); in menu_finalize()
395 prop->visible.expr = dep; in menu_finalize()
401 if (prop->type == P_SELECT) { in menu_finalize()
402 struct symbol *es = prop_get_symbol(prop); in menu_finalize()
405 } else if (prop->type == P_IMPLY) { in menu_finalize()
406 struct symbol *es = prop_get_symbol(prop); in menu_finalize()
502 for (prop = menu->sym->prop; prop; prop = prop->next) { in menu_finalize()
503 if (prop->type == P_DEFAULT) in menu_finalize()
504 prop_warn(prop, "defaults for choice " in menu_finalize()
506 if (prop->menu == menu) in menu_finalize()
508 if (prop->type == P_PROMPT && in menu_finalize()
509 prop->menu->parent->sym != sym) in menu_finalize()
510 prop_warn(prop, "choice value used outside its choice group"); in menu_finalize()
521 for (prop = menu->sym->prop; prop; prop = prop->next) { in menu_finalize()
522 if (prop->menu != menu) in menu_finalize()
524 prop->visible.expr = expr_alloc_and(expr_copy(basedep), in menu_finalize()
525 prop->visible.expr); in menu_finalize()
529 prop = sym_get_choice_prop(sym); in menu_finalize()
530 for (ep = &prop->expr; *ep; ep = &(*ep)->left.expr) in menu_finalize()
704 static void get_prompt_str(struct gstr *r, struct property *prop, in get_prompt_str() argument
711 str_printf(r, "Prompt: %s\n", prop->text); in get_prompt_str()
712 menu = prop->menu->parent; in get_prompt_str()
723 if (menu_is_visible(prop->menu)) { in get_prompt_str()
730 jump->target = prop->menu; in get_prompt_str()
766 struct property *prop = NULL; in get_symbol_prop() local
768 for_all_properties(sym, prop, P_SYMBOL) in get_symbol_prop()
770 return prop; in get_symbol_prop()
777 struct property *prop; in get_symbol_props_str() local
779 for_all_properties(sym, prop, tok) { in get_symbol_props_str()
785 expr_gstr_print(prop->expr, r); in get_symbol_props_str()
797 struct property *prop; in get_symbol_str() local
804 prop = sym_get_range_prop(sym); in get_symbol_str()
805 if (prop) { in get_symbol_str()
807 expr_gstr_print(prop->expr, r); in get_symbol_str()
812 for_all_prompts(sym, prop) in get_symbol_str()
813 get_prompt_str(r, prop, head); in get_symbol_str()
815 prop = get_symbol_prop(sym); in get_symbol_str()
816 if (prop) { in get_symbol_str()
817 str_printf(r, " Defined at %s:%d\n", prop->menu->file->name, in get_symbol_str()
818 prop->menu->lineno); in get_symbol_str()
819 if (!expr_is_yes(prop->visible.expr)) { in get_symbol_str()
821 expr_gstr_print(prop->visible.expr, r); in get_symbol_str()