aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2025-02-17 20:23:00 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2025-02-17 20:23:00 +0200
commitdf0e33be15126851bdca7072891492dc21188205 (patch)
tree9a4c85b446284ad95e3416d43aba15d50fd0af66
parenteca1ac18dc1978b15b500c9f1710c05cb1ccc0ec (diff)
downloadmeson-bettererror.zip
meson-bettererror.tar.gz
meson-bettererror.tar.bz2
Improve error message on nonexisting options.bettererror
-rw-r--r--mesonbuild/interpreter/interpreter.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/mesonbuild/interpreter/interpreter.py b/mesonbuild/interpreter/interpreter.py
index 4b023a8..ff4be7e 100644
--- a/mesonbuild/interpreter/interpreter.py
+++ b/mesonbuild/interpreter/interpreter.py
@@ -1080,7 +1080,10 @@ class Interpreter(InterpreterBase, HoldableObject):
if optname_regex.search(optname.split('.', maxsplit=1)[-1]) is not None:
raise InterpreterException(f'Invalid option name {optname!r}')
- value_object, value = self.coredata.optstore.get_option_from_meson_file(options.OptionKey(optname, self.subproject))
+ try:
+ value_object, value = self.coredata.optstore.get_option_from_meson_file(options.OptionKey(optname, self.subproject))
+ except KeyError:
+ raise MesonException(f'Option {optname} does not exist.')
if isinstance(value_object, options.UserFeatureOption):
ocopy = copy.copy(value_object)
ocopy.name = optname