Skip to content

dwds includes type arguments in a frames variables, where VM does not #2340

Closed
@DanTup

Description

@DanTup

If I break in a generic function like this:

Screenshot 2024-01-11 162746

With the VM, the type arguments are not included in the local variables:

Screenshot 2024-01-11 162600

But for web they are:

Screenshot 2024-01-11 162743

These come from the vars of topFrame on the pause event. The complete vars collections are below:

VM

[
	{
		"type": "BoundVariable",
		"name": "this",
		"value": {
			"type": "@Instance",
			"class": {
				"type": "@Class",
				"fixedId": true,
				"id": "classes/1442",
				"name": "MainApp",
				"location": {
					"type": "SourceLocation",
					"script": {
						"type": "@Script",
						"fixedId": true,
						"id": "libraries/@18430641/scripts/package%3Aflutter_type_args%2Fmain.dart/18cf957edbc",
						"uri": "package:flutter_type_args/main.dart"
					},
					"tokenPos": 91,
					"endTokenPos": 432,
					"line": 7,
					"column": 1
				},
				"library": {
					"type": "@Library",
					"fixedId": true,
					"id": "libraries/@18430641",
					"name": "",
					"uri": "package:flutter_type_args/main.dart"
				}
			},
			"identityHashCode": 2298694550,
			"id": "objects/0",
			"kind": "PlainInstance",
			"length": 2
		},
		"declarationTokenPos": -1,
		"scopeStartTokenPos": -1,
		"scopeEndTokenPos": 430
	},
	{
		"type": "BoundVariable",
		"name": "a",
		"value": {
			"type": "@Instance",
			"class": {
				"type": "@Class",
				"fixedId": true,
				"id": "classes/59",
				"name": "_Smi",
				"location": {
					"type": "SourceLocation",
					"script": {
						"type": "@Script",
						"fixedId": true,
						"id": "libraries/@0150898/scripts/dart%3Acore-patch%2Fintegers.dart/0",
						"uri": "dart:core-patch/integers.dart"
					},
					"tokenPos": 17144,
					"endTokenPos": 25361,
					"line": 560,
					"column": 1
				},
				"library": {
					"type": "@Library",
					"fixedId": true,
					"id": "libraries/@0150898",
					"name": "dart.core",
					"uri": "dart:core"
				}
			},
			"identityHashCode": 0,
			"kind": "Int",
			"fixedId": true,
			"id": "objects/int-1",
			"valueAsString": "1"
		},
		"declarationTokenPos": 406,
		"scopeStartTokenPos": 406,
		"scopeEndTokenPos": 430
	}
]

DWDS

[
	{
		"type": "BoundVariable",
		"name": "this",
		"value": {
			"type": "@Instance",
			"id": "5254304530816586256.1.5",
			"kind": "PlainInstance",
			"identityHashCode": 762382098,
			"class": {
				"type": "@Class",
				"id": "classes|package:flutter_type_args/main.dart|MainApp",
				"name": "MainApp",
				"library": {
					"type": "@Library",
					"id": "package:flutter_type_args/main.dart",
					"name": "package:flutter_type_args/main.dart",
					"uri": "package:flutter_type_args/main.dart"
				}
			}
		},
		"declarationTokenPos": -1,
		"scopeStartTokenPos": -1,
		"scopeEndTokenPos": -1
	},
	{
		"type": "BoundVariable",
		"name": "T",
		"value": {
			"type": "@Instance",
			"id": "5254304530816586256.1.283",
			"kind": "PlainInstance",
			"identityHashCode": 902881957,
			"class": {
				"type": "@Class",
				"id": "classes|dart:_rti|Rti",
				"name": "Rti",
				"library": {
					"type": "@Library",
					"id": "dart:_rti",
					"name": "dart:_rti",
					"uri": "dart:_rti"
				}
			}
		},
		"declarationTokenPos": -1,
		"scopeStartTokenPos": -1,
		"scopeEndTokenPos": -1
	},
	{
		"type": "BoundVariable",
		"name": "a",
		"value": {
			"type": "@Instance",
			"id": "objects/int-1",
			"kind": "Double",
			"identityHashCode": 370953967,
			"class": {
				"type": "@Class",
				"id": "classes|dart:core|Double",
				"name": "Double",
				"library": {
					"type": "@Library",
					"id": "dart:core",
					"name": "dart:core",
					"uri": "dart:core"
				}
			},
			"valueAsString": "1"
		},
		"declarationTokenPos": -1,
		"scopeStartTokenPos": -1,
		"scopeEndTokenPos": -1
	}
]

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions