-
Notifications
You must be signed in to change notification settings - Fork 773
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
Fixes #9, Internal error in FSI: FS0192: binding null type in envBindTyp... #250
Conversation
…TypeRef #9 Fixes #10, internal error: binding null type in envBindTypeRef Both issues were caused by the same underlying issue. RefEmit automagically applies escaping to names that contain a ',' So ``,`` becomes ``\,``. When we tried to create a ref to a nested type we didn't add the ',' escaping so we couldnot bind to the created type. The fix is very straightforward, change BasicQualifiedName to correctly escape names with comma's.
1-line fix FTW! Banging on this, I see some related issues with pickling/de-pickling quotations containing types with commas. They don't seem to be caused by this change, though, so I'll open as separate bugs. Have you checked how this affects type providers? They rely on comma-encoding in the type name to handle static parameters, so might be worth a careful look. For the tests - the bug was with FSI only, but current tests won't be run through FSI (at least not usually). Rather than add a new core area, it might be a better fit to expand existing backtick stuff at |
I'm looking at some type provider stuff right now, so I can move right on to the new bugs. |
Nice work! |
Hi, I started hitting this FS0192 problem recently, even when testing on latest release of 4.0: |
@ovatsus, looks like everything is cleared up in that issue, can you confirm? Turns out to be unrelated? |
It's still a very bad error message for missing a reference, but yes, it is fixed now. Thanks |
Fixes #9, internal error: binding null type in envBindTypeRef
Fixes #10, internal error: binding null type in envBindTypeRef
Both issues were caused by the same underlying issue. RefEmit automagically applies escaping to names that
contain a ',' So
,
becomes\,
.When we tried to create a ref to a nested type we didn't add the ',' escaping so we couldnot bind to the created type.
The fix is very straightforward, change BasicQualifiedName to correctly escape names with comma's.