-
-
Notifications
You must be signed in to change notification settings - Fork 679
Add --uncheckedBehavior to customize the use of unchecked() contexts #2575
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
Conversation
|
I think it's better to have several options. Like:
wdyt? |
I got this working, but the compiler doesn't want to bootstrap with The last commit I added demonstrates this issue. When this is fixed, I'll force-push it away before this PR is merged. |
d049bd2 to
2930aae
Compare
77e4e73 to
4734f33
Compare
|
After changing some code in the compiler, it appears bootstrap can compile all the tests using |
49b7ec3 to
809a4d4
Compare
|
This should be ready-to-merge, unless @dcodeIO wants to remove the |
|
I can probably remove that commit anyway due to #2586
|
3e41b48 to
ac6c182
Compare
|
Even with the unchecked operator removed, something is somehow broken. |
|
The |
ac6c182 to
3e41b48
Compare
|
I just played around with |
718a287 to
4468eda
Compare
|
|
b05502a to
544fd64
Compare
|
Given the problems observed with |
Going back to disabling unchecked would be fine, but describing the mode to be "unsafe" or "experimental" or just outright saying it breaks things should be warning enough. @dcodeIO I'll do it if it's necessary. |
|
Given that |
|
Same assertion is hit in another PR (linked above), which is otherwise unrelated. Interestingly, the issue can only be seen on CI, and only on boostrap:release. |
5919b54 to
718a5d0
Compare
This new option allows users to use unchecked() as usual, ignore it entirely, and force unchecked contexts everywhere. Ignoring unchecked is useful for debugging, and, if you're certain you want to accept the risk, forcing unchecked could be beneficial for performance.
7f439ac to
478895f
Compare
|
Bootstrapping with |
If the context is unchecked, something very wrong must have happened. Co-authored-by: dcode <dcode@dcode.io>
|
Thanks :) |
This new option allows users to use unchecked() as usual, ignore it
entirely, and force unchecked contexts everywhere. Ignoring unchecked
is useful for debugging, and, if you're certain you want to accept the
risk, forcing unchecked could be beneficial for performance.