6282b35c4c
When generating SSA jump instructions (HContinue and HBreak) for AST break statements, ensure that we only select labels from the target's label list that are explicitly marked as valid continue (isContinueTarget) or break (isBreakTarget) targets. Previously, handler.labels.first was selected indiscriminately if non-empty, which caused unlabeled continue statements inside loops that had an outer break label to incorrectly generate labeled continue jumps targeting the break label. Fixes: https://github.com/dart-lang/sdk/issues/63456 Change-Id: Ic497776141a192edb0930f4585cdaae2feecb3d5 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/510280 Commit-Queue: Nate Biggs <natebiggs@google.com> Reviewed-by: Stephen Adams <sra@google.com>