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

Finish disentangling Windows and Unix logic #2424

Closed
2 tasks done
workingjubilee opened this issue Jul 16, 2020 · 1 comment · Fixed by #3941
Closed
2 tasks done

Finish disentangling Windows and Unix logic #2424

workingjubilee opened this issue Jul 16, 2020 · 1 comment · Fixed by #3941
Labels
enhancement O-bsd *BSD related O-linux Linux related O-macos Mac OS related O-windows Windows related
Milestone

Comments

@workingjubilee
Copy link
Member

workingjubilee commented Jul 16, 2020

After #2342 there's still a few instances of the platform-specific code being entangled between the two OS platforms.

In some cases this is because of usage of cfg!(expr) which works very differently than #[cfg(attr)]. This causes useless object code to be compiled on Windows that cannot be properly tested and evaluated and in any case probably fails to even compile due to being dependent on some hidden platform-targeted code. There might also be other increases in compilation times as a result of poor separation of logic. So, ideally, the Windows and Unix logic would be cleanly separated, or at least enough so that neither platform compiles useless, impossible to test, and possibly-erroneous codepaths on the other.

I likely will follow up on this myself but I'm filing this issue for self-reference, because several instances of editing code that was supposed to only affect Unix platforms and then mysteriously breaking Windows in CI (and not because I broke generally-applicable code) was a notable part of my experience with #2387.

Tasks

  1. 1 of 1
    O-windows bug
@djc
Copy link
Contributor

djc commented Jul 11, 2024

#3887 made some progress on this, too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement O-bsd *BSD related O-linux Linux related O-macos Mac OS related O-windows Windows related
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants