diff options
author | Sascha Roloff <sascha.roloff@huawei.com> | 2024-09-11 15:28:49 +0200 |
---|---|---|
committer | Sascha Roloff <sascha.roloff@huawei.com> | 2024-09-12 17:38:30 +0200 |
commit | 76ab9217628084c661176118d5a8020a3366f04c (patch) | |
tree | 76d716d6d853cee5b346530771e0aef38d24719f /rules | |
parent | 6dba91abb5696f9c0cb905c0e820dbad91d63dd4 (diff) | |
download | justbuild-76ab9217628084c661176118d5a8020a3366f04c.tar.gz |
Rules CC: Deduplicate args returned by expressions collecting args from dependencies
Diffstat (limited to 'rules')
-rw-r--r-- | rules/CC/EXPRESSIONS | 50 |
1 files changed, 28 insertions, 22 deletions
diff --git a/rules/CC/EXPRESSIONS b/rules/CC/EXPRESSIONS index 2413f98c..32022ce3 100644 --- a/rules/CC/EXPRESSIONS +++ b/rules/CC/EXPRESSIONS @@ -320,18 +320,21 @@ } , "imports": {"list_provider": ["./", "..", "field_list_provider"]} , "expression": - { "type": "++" + { "type": "nub_right" , "$1": - { "type": "foreach" - , "var": "fieldname" - , "range": {"type": "var", "name": "deps-fieldnames"} - , "body": - { "type": "let*" - , "bindings": - [ ["provider", "compile-args"] - , ["transition", {"type": "var", "name": "deps-transition"}] - ] - , "body": {"type": "CALL_EXPRESSION", "name": "list_provider"} + { "type": "++" + , "$1": + { "type": "foreach" + , "var": "fieldname" + , "range": {"type": "var", "name": "deps-fieldnames"} + , "body": + { "type": "let*" + , "bindings": + [ ["provider", "compile-args"] + , ["transition", {"type": "var", "name": "deps-transition"}] + ] + , "body": {"type": "CALL_EXPRESSION", "name": "list_provider"} + } } } } @@ -387,18 +390,21 @@ } , "imports": {"list_provider": ["./", "..", "field_list_provider"]} , "expression": - { "type": "++" + { "type": "nub_right" , "$1": - { "type": "foreach" - , "var": "fieldname" - , "range": {"type": "var", "name": "deps-fieldnames"} - , "body": - { "type": "let*" - , "bindings": - [ ["provider", "link-args"] - , ["transition", {"type": "var", "name": "deps-transition"}] - ] - , "body": {"type": "CALL_EXPRESSION", "name": "list_provider"} + { "type": "++" + , "$1": + { "type": "foreach" + , "var": "fieldname" + , "range": {"type": "var", "name": "deps-fieldnames"} + , "body": + { "type": "let*" + , "bindings": + [ ["provider", "link-args"] + , ["transition", {"type": "var", "name": "deps-transition"}] + ] + , "body": {"type": "CALL_EXPRESSION", "name": "list_provider"} + } } } } |