-
Notifications
You must be signed in to change notification settings - Fork 789
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 32: add general check for escaping typars to check phase #442
Conversation
A full test pass will be needed to check that this error doesn't trigger on any existing known code. |
I'm seeing two tests that previously passed, and are now failing with the new error. Both have a non-trivial amount of code, so I won't paste it here.
Just compile each source file with no flags to repro. |
Thanks, I'll take a look. |
I've updated this - thanks. This line is the relevant addition: dsyme@3c3708f#diff-7044d4e85f35657f78a245e763e92ddcR146. I'm glad we flushed out that particular problem. Another full test run is needed I'm afraid, sorry about that. it's just one of those things. Cheers! |
Ok, tests are all green now. GIven that, do you feel this is a safe enough fix that we can apply it this late? |
I'm OK with putting this off to vNext (e.g. first OOB) |
This (partly) addresses the class of conditions like #32 which give "undefined type variable" internal errors by adding an earlier check to check.fs which gives a user-visible error in this case. These conditions can in some cases indicate problems with type inference, though in the case of #32 the check is actually the best way to detect the escape condition. fixes #32 closes #442 commit 5d4d818 Merge: 3c3708f 0b88185 Author: Don Syme <[email protected]> Date: Tue May 19 14:33:37 2015 +0100 merge fsharp4 commit 3c3708f Author: Don Syme <[email protected]> Date: Tue May 19 14:31:06 2015 +0100 normalzie equi-recursive commit 220131b Author: Don Syme <[email protected]> Date: Tue May 12 15:32:07 2015 +0100 update tests, change warning to error commit 53153b8 Author: Don Syme <[email protected]> Date: Tue May 12 15:01:44 2015 +0100 add general check for escaping typars to check phase
Applied to the OOB branch, thanks! |
This (partly) addresses the class of conditions like #32 which give "undefined type variable" internal errors by adding an earlier check to check.fs which gives a user-visible error in this case.
These conditions can in some cases indicate problems with type inference, though in the case of #32 the check is actually the best way to detect the escape condition.
Output from the neg91.fs needs to be updated.