miniwdl
miniwdl copied to clipboard
scatter variable name collision policy
Cromwell allows a scatter variable name to collide with another value elsewhere in the workflow. Inside the scatter body, the scatter variable shadows the other value.
e.g. this is fine:
version 1.0
workflow hello {
input {
Array[Int] y = range(3)
}
scatter (y in y) {
Int x = y+1
}
output {
Array[Int] x_out = x
}
}
seen in the wild in:
https://github.com/biowdl/jointgenotyping/blob/81881f21506983a917d4dc433c6b326443abe275/jointgenotyping.wdl#L45-L48
miniwdl rejects these. Is this a spec issue? or a validation oversight in Cromwell?