[vm/bytecode] Fix last source position in a function Change-Id: Id3b9c6476cc3745a39a7010b7ae09d2422467e31 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/107182 Reviewed-by: Régis Crelier <regis@google.com> Commit-Queue: Alexander Markov <alexmarkov@google.com>
diff --git a/pkg/vm/lib/bytecode/gen_bytecode.dart b/pkg/vm/lib/bytecode/gen_bytecode.dart index 894471a..db0c918 100644 --- a/pkg/vm/lib/bytecode/gen_bytecode.dart +++ b/pkg/vm/lib/bytecode/gen_bytecode.dart
@@ -700,6 +700,9 @@ // BytecodeAssembler eliminates this bytecode if it is unreachable. asm.emitPushNull(); } + if (node.function != null) { + _recordSourcePosition(node.function.fileEndOffset); + } _genReturnTOS(); } } else { @@ -1931,9 +1934,9 @@ _generateNode(function.body); // BytecodeAssembler eliminates this bytecode if it is unreachable. + _recordSourcePosition(function.fileEndOffset); asm.emitPushNull(); _genReturnTOS(); - _recordSourcePosition(function.fileEndOffset); if (locals.isSyncYieldingFrame) { _genSyncYieldingEpilogue(