Skip to content

Commit 2423ffe

Browse files
alexmarkovcommit-bot@chromium.org
authored andcommitted
[vm,bytecode] Correct assertion for source positions of yield points
Front-end sometimes generates synthetic awaits (yield points) which don't have a source position. This change fixes assertion in bytecode generator to account for that. Issue: #38979 Change-Id: I64ded6a2e3bb9678ac3a7ddc73b117bdd52c3305 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/122177 Reviewed-by: Aart Bik <ajcbik@google.com> Reviewed-by: Ryan Macnak <rmacnak@google.com> Commit-Queue: Alexander Markov <alexmarkov@google.com>
1 parent d0139e8 commit 2423ffe

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

pkg/vm/lib/bytecode/source_positions.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ class SourcePositions {
4040

4141
void addYieldPoint(int pc, int fileOffset) {
4242
assert(pc > _lastPc);
43-
assert(fileOffset >= 0);
43+
assert((fileOffset >= 0) || (fileOffset == syntheticCodeMarker));
4444
_positions.add(pc);
4545
_positions.add(yieldPointMarker);
4646
_positions.add(pc);

0 commit comments

Comments
 (0)