diff options
author | Klaus Aehlig <klaus.aehlig@huawei.com> | 2022-04-07 12:01:16 +0200 |
---|---|---|
committer | Klaus Aehlig <klaus.aehlig@huawei.com> | 2022-04-07 16:47:24 +0200 |
commit | 48bb318eca1e23f655238515f141e83577dda4e9 (patch) | |
tree | 7c8e21733815d5e352117d64b9908f9ca2e92e6c /src | |
parent | 0dd35a95f0d92cc2135f1bb3aea668d957823627 (diff) | |
download | justbuild-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.cpp | 2 |
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(); |