summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorKlaus Aehlig <klaus.aehlig@huawei.com>2022-04-07 12:01:16 +0200
committerKlaus Aehlig <klaus.aehlig@huawei.com>2022-04-07 16:47:24 +0200
commit48bb318eca1e23f655238515f141e83577dda4e9 (patch)
tree7c8e21733815d5e352117d64b9908f9ca2e92e6c /src
parent0dd35a95f0d92cc2135f1bb3aea668d957823627 (diff)
downloadjustbuild-48bb318eca1e23f655238515f141e83577dda4e9.tar.gz
expression evaluation: clean up truth values
For historic reasons, we considerd special strings as false values. Drop that behavior in favor of a clean LISP-like semantics: everything is true that is not empty.
Diffstat (limited to 'src')
-rw-r--r--src/buildtool/build_engine/expression/evaluator.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/buildtool/build_engine/expression/evaluator.cpp b/src/buildtool/build_engine/expression/evaluator.cpp
index e573bf36..a768f43c 100644
--- a/src/buildtool/build_engine/expression/evaluator.cpp
+++ b/src/buildtool/build_engine/expression/evaluator.cpp
@@ -29,7 +29,7 @@ auto ValueIsTrue(ExpressionPtr const& val) -> bool {
return *val != number_t{0};
}
if (val->IsString()) {
- return *val != ""s and *val != "0"s and *val != "NO"s;
+ return *val != ""s;
}
if (val->IsList()) {
return not val->List().empty();