[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20240310134515.447020-1-masahiroy@kernel.org>
Date: Sun, 10 Mar 2024 22:45:15 +0900
From: Masahiro Yamada <masahiroy@...nel.org>
To: linux-kbuild@...r.kernel.org
Cc: linux-kernel@...r.kernel.org,
Masahiro Yamada <masahiroy@...nel.org>
Subject: [PATCH] kconfig: check prompt for choice while parsing
This can be checked on-the-fly.
Signed-off-by: Masahiro Yamada <masahiroy@...nel.org>
---
scripts/kconfig/menu.c | 3 ---
scripts/kconfig/parser.y | 6 ++++++
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/scripts/kconfig/menu.c b/scripts/kconfig/menu.c
index 840ce642ec43..8498481e6afe 100644
--- a/scripts/kconfig/menu.c
+++ b/scripts/kconfig/menu.c
@@ -561,9 +561,6 @@ void menu_finalize(struct menu *parent)
if (sym->type == S_UNKNOWN)
menu_warn(parent, "config symbol defined without type");
- if (sym_is_choice(sym) && !parent->prompt)
- menu_warn(parent, "choice must have a prompt");
-
/* Check properties connected to this symbol */
sym_check_prop(sym);
sym->flags |= SYMBOL_WARNED;
diff --git a/scripts/kconfig/parser.y b/scripts/kconfig/parser.y
index 22f616334585..b45bfaf0a02b 100644
--- a/scripts/kconfig/parser.y
+++ b/scripts/kconfig/parser.y
@@ -233,6 +233,12 @@ choice: T_CHOICE T_EOL
choice_entry: choice choice_option_list
{
+ if (!current_entry->prompt) {
+ fprintf(stderr, "%s:%d: error: choice must have a prompt\n",
+ current_entry->filename, current_entry->lineno);
+ yynerrs++;
+ }
+
$$ = menu_add_menu();
};
--
2.40.1
Powered by blists - more mailing lists