Skip to content

Conversation

@boingoing
Copy link
Contributor

Lambda with compact-body which is defer-parsed and which is trailed immediately by a string constant can cause the string constant to miss having a pid created. When we try to load the string constant table in ByteCodeGenerator, we'll hit an AV with this pid being nullptr.

Fix by forcing the scanner to create a pid for this string constant - only for the single case of a string constant token immediately following the single-expression lambda body which is defer-parsed.

Test case looks like this:

jtmchw => z
'123'

Fixes:
https://microsoft.visualstudio.com/web/wi.aspx?id=13976524

… defer-parsed compact-body lambda

Lambda with compact-body which is defer-parsed and which is trailed immediately by a string constant can cause the string constant to miss having a pid created. When we try to load the string constant table in `ByteCodeGenerator`, we'll hit an AV with this pid being nullptr.

Fix by forcing the scanner to create a pid for this string constant - only for the single case of a string constant token immediately following the single-expression lambda body which is defer-parsed.

Test case looks like this:
```
jtmchw => z
'123'
```

Fixes:
https://microsoft.visualstudio.com/web/wi.aspx?id=13976524
@boingoing
Copy link
Contributor Author

@dotnet-bot test Ubuntu shared_ubuntu_linux_debug please

@chakrabot chakrabot merged commit 43adca1 into chakra-core:release/1.8 Feb 3, 2018
chakrabot pushed a commit that referenced this pull request Feb 3, 2018
… string constant trailing defer-parsed compact-body lambda

Merge pull request #4612 from boingoing:13976524

Lambda with compact-body which is defer-parsed and which is trailed immediately by a string constant can cause the string constant to miss having a pid created. When we try to load the string constant table in `ByteCodeGenerator`, we'll hit an AV with this pid being nullptr.

Fix by forcing the scanner to create a pid for this string constant - only for the single case of a string constant token immediately following the single-expression lambda body which is defer-parsed.

Test case looks like this:
```
jtmchw => z
'123'
```

Fixes:
https://microsoft.visualstudio.com/web/wi.aspx?id=13976524
chakrabot pushed a commit that referenced this pull request Feb 3, 2018
…te pid for string constant trailing defer-parsed compact-body lambda

Merge pull request #4612 from boingoing:13976524

Lambda with compact-body which is defer-parsed and which is trailed immediately by a string constant can cause the string constant to miss having a pid created. When we try to load the string constant table in `ByteCodeGenerator`, we'll hit an AV with this pid being nullptr.

Fix by forcing the scanner to create a pid for this string constant - only for the single case of a string constant token immediately following the single-expression lambda body which is defer-parsed.

Test case looks like this:
```
jtmchw => z
'123'
```

Fixes:
https://microsoft.visualstudio.com/web/wi.aspx?id=13976524
chakrabot pushed a commit that referenced this pull request Feb 3, 2018
…anner to create pid for string constant trailing defer-parsed compact-body lambda

Merge pull request #4612 from boingoing:13976524

Lambda with compact-body which is defer-parsed and which is trailed immediately by a string constant can cause the string constant to miss having a pid created. When we try to load the string constant table in `ByteCodeGenerator`, we'll hit an AV with this pid being nullptr.

Fix by forcing the scanner to create a pid for this string constant - only for the single case of a string constant token immediately following the single-expression lambda body which is defer-parsed.

Test case looks like this:
```
jtmchw => z
'123'
```

Fixes:
https://microsoft.visualstudio.com/web/wi.aspx?id=13976524
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants