Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Skip reversing arguments in SuperCallDerived #3062

Merged
merged 1 commit into from
Jun 25, 2023

Conversation

dirkdev98
Copy link
Contributor

This Pull Request fixes some failing test262 tests depending on a derived super call.

It changes the following:

  • It removes reversing arguments passed to the derived super call. code_block::construct_internal already reverses the arguments into argument_n ... argument_1 on to the stack, since normal constructor parameters are resolved in order.

`code_block::construct_internal` already reverses the arguments into `argument_n ... argument_1` on to the stack, since normal constructor parameters are resolved in order.
@codecov
Copy link

codecov bot commented Jun 25, 2023

Codecov Report

Merging #3062 (c4ad343) into main (1f94e79) will increase coverage by 0.00%.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main    #3062   +/-   ##
=======================================
  Coverage   50.55%   50.55%           
=======================================
  Files         446      446           
  Lines       46071    46070    -1     
=======================================
  Hits        23292    23292           
+ Misses      22779    22778    -1     
Impacted Files Coverage Δ
boa_engine/src/vm/opcode/environment/mod.rs 54.08% <ø> (+0.54%) ⬆️
boa_engine/src/vm/opcode/mod.rs 69.23% <ø> (ø)

@jedel1043
Copy link
Member

Test262 conformance changes

Test result main count PR count difference
Total 94,842 94,842 0
Passed 74,663 74,691 +28
Ignored 18,812 18,812 0
Failed 1,367 1,339 -28
Panics 0 0 0
Conformance 78.72% 78.75% +0.03%
Fixed tests (28):
test/built-ins/String/prototype/replaceAll/searchValue-replacer-RegExp-call-fn.js [strict mode] (previously Failed)
test/built-ins/String/prototype/replaceAll/searchValue-replacer-RegExp-call-fn.js (previously Failed)
test/built-ins/String/prototype/replaceAll/searchValue-replacer-RegExp-call.js [strict mode] (previously Failed)
test/built-ins/String/prototype/replaceAll/searchValue-replacer-RegExp-call.js (previously Failed)
test/built-ins/ArrayBuffer/isView/arg-is-dataview-subclass-instance.js [strict mode] (previously Failed)
test/built-ins/ArrayBuffer/isView/arg-is-dataview-subclass-instance.js (previously Failed)
test/language/statements/class/subclass/class-definition-evaluation-empty-constructor-heritage-present.js [strict mode] (previously Failed)
test/language/statements/class/subclass/class-definition-evaluation-empty-constructor-heritage-present.js (previously Failed)
test/language/statements/class/subclass/default-constructor-2.js [strict mode] (previously Failed)
test/language/statements/class/subclass/default-constructor-2.js (previously Failed)
test/language/statements/class/subclass/builtin-objects/Array/regular-subclassing.js [strict mode] (previously Failed)
test/language/statements/class/subclass/builtin-objects/Array/regular-subclassing.js (previously Failed)
test/language/statements/class/subclass/builtin-objects/Array/length.js [strict mode] (previously Failed)
test/language/statements/class/subclass/builtin-objects/Array/length.js (previously Failed)
test/language/statements/class/subclass/builtin-objects/Function/instance-name.js [strict mode] (previously Failed)
test/language/statements/class/subclass/builtin-objects/Function/instance-name.js (previously Failed)
test/language/statements/class/subclass/builtin-objects/Function/instance-length.js [strict mode] (previously Failed)
test/language/statements/class/subclass/builtin-objects/Function/instance-length.js (previously Failed)
test/language/statements/class/subclass/builtin-objects/Function/regular-subclassing.js [strict mode] (previously Failed)
test/language/statements/class/subclass/builtin-objects/Function/regular-subclassing.js (previously Failed)
test/language/statements/class/subclass/builtin-objects/GeneratorFunction/instance-name.js [strict mode] (previously Failed)
test/language/statements/class/subclass/builtin-objects/GeneratorFunction/instance-name.js (previously Failed)
test/language/statements/class/subclass/builtin-objects/GeneratorFunction/instance-length.js [strict mode] (previously Failed)
test/language/statements/class/subclass/builtin-objects/GeneratorFunction/instance-length.js (previously Failed)
test/language/statements/class/subclass/builtin-objects/GeneratorFunction/regular-subclassing.js [strict mode] (previously Failed)
test/language/statements/class/subclass/builtin-objects/GeneratorFunction/regular-subclassing.js (previously Failed)
test/language/statements/class/subclass/builtin-objects/Date/regular-subclassing.js [strict mode] (previously Failed)
test/language/statements/class/subclass/builtin-objects/Date/regular-subclassing.js (previously Failed)

Copy link
Member

@jedel1043 jedel1043 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the fix!

@jedel1043 jedel1043 added bug Something isn't working vm Issues and PRs related to the Boa Virtual Machine. labels Jun 25, 2023
@jedel1043 jedel1043 added this to the v0.17.0 milestone Jun 25, 2023
Copy link
Member

@HalidOdat HalidOdat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me! Nice catch! :)

@HalidOdat HalidOdat added this pull request to the merge queue Jun 25, 2023
Merged via the queue into boa-dev:main with commit 4f89303 Jun 25, 2023
@dirkdev98 dirkdev98 deleted the fix/super-call-derived branch June 25, 2023 20:59
Razican pushed a commit that referenced this pull request Jun 26, 2023
`code_block::construct_internal` already reverses the arguments into `argument_n ... argument_1` on to the stack, since normal constructor parameters are resolved in order.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working vm Issues and PRs related to the Boa Virtual Machine.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants