diff options
| author | gingerBill <bill@gingerbill.org> | 2020-09-15 12:36:37 +0100 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2020-09-15 12:45:44 +0100 |
| commit | 9d976b04bc018047b1ac3eb9d99d6757a2226695 (patch) | |
| tree | fd6e820c5c7fed16c0305579ac1a0408e6ce38b2 /src/parser.cpp | |
| parent | b94dde281726ce16f79167e58159a8026c689ef9 (diff) | |
Fix +build tag logic
Diffstat (limited to 'src/parser.cpp')
| -rw-r--r-- | src/parser.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/parser.cpp b/src/parser.cpp index 868291177..2ddad3b58 100644 --- a/src/parser.cpp +++ b/src/parser.cpp @@ -4821,16 +4821,16 @@ bool parse_build_tag(Token token_for_pos, String s) { TargetArchKind arch = get_target_arch_from_string(p); if (os != TargetOs_Invalid) { GB_ASSERT(arch == TargetArch_Invalid); - if (is_notted && os == build_context.metrics.os) { - this_kind_correct = false; - } else if (os != build_context.metrics.os) { - this_kind_correct = false; + if (is_notted) { + this_kind_correct = this_kind_correct && (os != build_context.metrics.os); + } else { + this_kind_correct = this_kind_correct && (os == build_context.metrics.os); } } else if (arch != TargetArch_Invalid) { - if (is_notted && arch == build_context.metrics.arch) { - this_kind_correct = false; - } else if (arch != build_context.metrics.arch) { - this_kind_correct = false; + if (is_notted) { + this_kind_correct = this_kind_correct && (arch != build_context.metrics.arch); + } else { + this_kind_correct = this_kind_correct && (arch == build_context.metrics.arch); } } if (os == TargetOs_Invalid && arch == TargetArch_Invalid) { |