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

fix(plugin-proposal-function-bind): fix invalid code emitted for `::super.foo` #12000

Merged
merged 2 commits into from Aug 24, 2020

Conversation

@uhyo
Copy link
Contributor

@uhyo uhyo commented Aug 24, 2020

Q                       A
Fixed Issues? none
Patch: Bug Fix? Yes
Major: Breaking Change?
Minor: New Feature?
Tests Added + Pass? Yes
Documentation PR Link
Any Dependency Changes?
License MIT

This PR fixes the handling of super in plugin-proposal-function-bind.
Current implementation emits invalid code when converting ::super.foo.

example

Input

class C {
  foo() {
    ::super.bar;
    ::super.baz(123);
  }
}

Current Output

class C {
  foo() {
    super.bar.bind(super);
    super.baz.call(super, 123);
  }

}

New Output

class C {
  foo() {
    super.bar.bind(this);
    super.baz.call(this, 123);
  }

}
@babel-bot
Copy link
Collaborator

@babel-bot babel-bot commented Aug 24, 2020

Build successful! You can test your changes in the REPL here: https://babeljs.io/repl/build/27773/

@codesandbox
Copy link

@codesandbox codesandbox bot commented Aug 24, 2020

This pull request is automatically built and testable in CodeSandbox.

To see build info of the built libraries, click here or the icon next to each commit SHA.

Latest deployment of this branch, based on commit 955aa09:

Sandbox Source
babel-repl-custom-plugin Configuration
babel-plugin-multi-config Configuration
Copy link
Contributor

@JLHwung JLHwung left a comment

Thanks!

@existentialism existentialism merged commit 76d571e into babel:main Aug 24, 2020
5 of 6 checks passed
5 of 6 checks passed
test262-pr Workflow: test262-pr
Details
Travis CI - Pull Request Build Passed
Details
babel/repl REPL preview is available
Details
build-standalone Workflow: build-standalone
Details
ci/codesandbox Building packages succeeded.
Details
e2e Workflow: e2e
Details
@existentialism
Copy link
Member

@existentialism existentialism commented Aug 24, 2020

@uhyo thanks for the PR!

@uhyo uhyo deleted the uhyo:fix-bind-super branch Aug 25, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

5 participants
You can’t perform that action at this time.