This throws the below assertion error:
string[]@ arr;
while (false && (@arr = cast<array<string>>(null) !is null)) {
break;
}
which can be avoided/fixed by adding parens around the assignment like so:
string[]@ arr;
while (false && ((@arr = cast<array<string>>(null)) !is null)) {
break;
}
originally reported on openplanet github: https://github.com/openplanet-nl/issues/issues/385