summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSascha Roloff <sascha.roloff@huawei.com>2024-09-11 14:46:09 +0200
committerSascha Roloff <sascha.roloff@huawei.com>2024-09-13 11:00:52 +0200
commit38927e66d384c5fc639dba6d586d50a1ba746163 (patch)
tree2f878db3ddeb9107e3ca5a3cb3376273962e33dc
parent86d5e8a813139b38d4d6b63730635c3b9cfe24c1 (diff)
downloadrules-cc-38927e66d384c5fc639dba6d586d50a1ba746163.tar.gz
Rules CC: Deduplicate args returned by expressions collecting args from dependencies
-rw-r--r--CC/EXPRESSIONS43
1 files changed, 22 insertions, 21 deletions
diff --git a/CC/EXPRESSIONS b/CC/EXPRESSIONS
index 4a0e558..e7fb54d 100644
--- a/CC/EXPRESSIONS
+++ b/CC/EXPRESSIONS
@@ -599,26 +599,29 @@
, "expression":
{ "type": "nub_right"
, "$1":
- { "type": "foreach"
- , "var": "fieldname"
- , "range": {"type": "var", "name": "deps-fieldnames"}
- , "body":
- { "type": "let*"
- , "bindings":
- [ ["provider", "run-libs-args"]
- , [ "transition"
- , { "type": "lookup"
- , "map":
- { "type": "var"
- , "name": "modified-transitions"
- , "default": {"type": "empty_map"}
+ { "type": "++"
+ , "$1":
+ { "type": "foreach"
+ , "var": "fieldname"
+ , "range": {"type": "var", "name": "deps-fieldnames"}
+ , "body":
+ { "type": "let*"
+ , "bindings":
+ [ ["provider", "run-libs-args"]
+ , [ "transition"
+ , { "type": "lookup"
+ , "map":
+ { "type": "var"
+ , "name": "modified-transitions"
+ , "default": {"type": "empty_map"}
+ }
+ , "key": {"type": "var", "name": "fieldname"}
+ , "default": {"type": "var", "name": "deps-transition"}
}
- , "key": {"type": "var", "name": "fieldname"}
- , "default": {"type": "var", "name": "deps-transition"}
- }
+ ]
]
- ]
- , "body": {"type": "CALL_EXPRESSION", "name": "list_provider"}
+ , "body": {"type": "CALL_EXPRESSION", "name": "list_provider"}
+ }
}
}
}
@@ -1739,9 +1742,7 @@
]
, ["run-libs", {"type": "CALL_EXPRESSION", "name": "run-libs-deps"}]
, [ "run-libs-args"
- , { "type": "nub_right"
- , "$1": {"type": "CALL_EXPRESSION", "name": "run-libs-args-deps"}
- }
+ , {"type": "CALL_EXPRESSION", "name": "run-libs-args-deps"}
]
, [ "ldflags-files"
, {"type": "CALL_EXPRESSION", "name": "ldflags-files-deps"}