aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mesonbuild/ast/interpreter.py5
-rw-r--r--test cases/unit/57 introspection/meson.build1
2 files changed, 6 insertions, 0 deletions
diff --git a/mesonbuild/ast/interpreter.py b/mesonbuild/ast/interpreter.py
index 8c73cb1..243f0be 100644
--- a/mesonbuild/ast/interpreter.py
+++ b/mesonbuild/ast/interpreter.py
@@ -35,6 +35,7 @@ from ..mparser import (
IfClauseNode,
IndexNode,
MethodNode,
+ NotNode,
OrNode,
PlusAssignmentNode,
StringNode,
@@ -235,6 +236,10 @@ class AstInterpreter(interpreterbase.InterpreterBase):
self.evaluate_statement(cur.right)
return False
+ def evaluate_notstatement(self, cur: NotNode) -> bool:
+ self.evaluate_statement(cur.value)
+ return False
+
def evaluate_foreach(self, node: ForeachClauseNode) -> None:
try:
self.evaluate_codeblock(node.block)
diff --git a/test cases/unit/57 introspection/meson.build b/test cases/unit/57 introspection/meson.build
index a094a55..9716eae 100644
--- a/test cases/unit/57 introspection/meson.build
+++ b/test cases/unit/57 introspection/meson.build
@@ -8,6 +8,7 @@ b1 = get_option('test_opt1')
b2 = get_option('test_opt2')
test_bool = b1 or b2
test_bool = b1 and b2
+test_bool = not test_bool
set_variable('list_test_plusassign', [])
list_test_plusassign += ['bugs everywhere']