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 Issue 21543 - dmd infinite loop on alias this and std.typecons.Nu… #12157

Merged
merged 1 commit into from Jan 27, 2021

Conversation

BorisCarvajal
Copy link
Member

…llable

@dlang-bot
Copy link
Contributor

Thanks for your pull request and interest in making D better, @BorisCarvajal! We are looking forward to reviewing it, and you should be hearing from a maintainer soon.
Please verify that your PR follows this checklist:

  • My PR is fully covered with tests (you can see the coverage diff by visiting the details link of the codecov check)
  • My PR is as minimal as possible (smaller, focused PRs are easier to review than big ones)
  • I have provided a detailed rationale explaining my changes
  • New or modified functions have Ddoc comments (with Params: and Returns:)

Please see CONTRIBUTING.md for more information.


If you have addressed all reviews or aren't sure how to proceed, don't hesitate to ping us with a simple comment.

Bugzilla references

Auto-close Bugzilla Severity Description
21543 normal dmd infinite loop on alias this and std.typecons.Nullable

Testing this PR locally

If you don't have a local development environment setup, you can use Digger to test this PR:

dub run digger -- build "master + dmd#12157"

@RazvanN7
Copy link
Contributor

@BorisCarvajal Can you please briefly explain what the issue is and how does this patch fix it?

@BorisCarvajal
Copy link
Member Author

There is a infinite loop, the second condition handles an alias this of the same type as its parent (like: T1 {alias T1 this}), but doesn't check the case of a cyclic alias this, something like T1 {alias T2 this}, T2 { alias T1 this }.

@BorisCarvajal
Copy link
Member Author

@RazvanN7, What's the deal with cirrus-ci coverage failing? My other pulls have the same problem.

->  Pinging Codecov
https://codecov.io/upload/v4?package=bash-20210115-cec3c92&token=secret&branch=pull%2F12157&commit=1b7909da1809af37d2123f0cc33ad8f3b6fe679f&build=5058485912076288&build_url=&name=&tag=&slug=dlang%2Fdmd&service=cirrus-ci&flags=&pr=12157&job=macOS10.15x64,DMD(coverage)&cmd_args=p,Z
HTTP 400
Please provide the repository token to upload reports via `-t :repository-token`
400

@MoonlightSentinel
Copy link
Contributor

MoonlightSentinel commented Jan 26, 2021

@BorisCarvajal Should be fixed now. Restarted your builds.

@BorisCarvajal
Copy link
Member Author

@MoonlightSentinel Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants