Skip to content

Fix XS modules (e.g., Function::Parameters) that create anonsubs. #20532

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

Merged
merged 1 commit into from
Nov 22, 2022

Conversation

FGasper
Copy link
Contributor

@FGasper FGasper commented Nov 21, 2022

Issue #20384: Commit 20d507b broke CPAN’s Function::Parameters. This updates that logic to (hopefully) differentiate OP_ANONCODE from an XS module versus from Perl.

@FGasper FGasper requested a review from leonerd November 21, 2022 15:29
@jkeenan
Copy link
Contributor

jkeenan commented Nov 21, 2022

This had a porting test error during CI. Once #20534 is merged into blead, could you rebase your branch on blead and re-run the "Sanity" test run?

Also, would it be possible for you to (locally) build and install a perl based on this branch, try to install all the CPAN modules cited in #20384, and let us know the results?

Copy link
Contributor

@leonerd leonerd left a comment

Choose a reason for hiding this comment

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

No objection from me. If it fixes CPAN modules and doesn't break core tests then I guess LGTM

@FGasper
Copy link
Contributor Author

FGasper commented Nov 22, 2022

Also, would it be possible for you to (locally) build and install a perl based on this branch, try to install all the CPAN modules cited in #20384, and let us know the results?

Of course.

For clarity, these are:

  • Function::Parameters
  • XS::Parse::Keyword
  • XS::Parse::Sublike
  • Devel::Chitin
  • Devel::WatchVars

… and I believe D::WV might still be broken, but “acceptably” (i.e., the module needs to accommodate a change that’s a net improvement in Perl).

@FGasper
Copy link
Contributor Author

FGasper commented Nov 22, 2022

With this PR, test suites for the following pass:

  • Function::Parameters
  • XS::Parse::Keyword
  • XS::Parse::Sublike

These distributions’ test suites still fail:

  • Devel::WatchVars - needs an update per improved diagnostic messaging.
  • Devel::Chitin - broken for reasons other than the srefgen/anoncode reduction, as can be seen by reverting the following commits on blead: d47ed50, 20d507b, c63def1, 35458d3

@demerphq
Copy link
Collaborator

I think you should rebase this commit and repush. That should fix the sanity check.

Issue Perl#20384: Commit 20d507b broke
CPAN’s Function::Parameters. This updates that logic to (hopefully)
differentiate OP_ANONCODE from an XS module versus from Perl.
@FGasper FGasper force-pushed the issue_20384_function_parameters branch from 2ccf216 to 39f6367 Compare November 22, 2022 16:25
@FGasper
Copy link
Contributor Author

FGasper commented Nov 22, 2022

I think you should rebase this commit and repush. That should fix the sanity check.

Done.

@tonycoz tonycoz merged commit 12c7085 into Perl:blead Nov 22, 2022
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.

5 participants