-
-
Notifications
You must be signed in to change notification settings - Fork 665
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
[cs] Pointer detection broken #11527
Comments
Addressed in e2e359b. There's now |
C# is still broken, but of course only on Linux and Mac because that seems to be this month's theme. |
So it adds
|
Kinda looks like #7200 ? |
I tried dodging the cast altogether if the types are equal, but there's some insanity going on with |
Next problem: The compiler comes across this crap: class Task_1<T0> {
static public var Factory(get,never) : cs.system.threading.tasks.TaskFactory_1<T0>;
} This fails since c5f913c. I've hacked it so that the type parameter lookup is allowed for |
Well, I guess I'll close here again because everything is "fixed". |
9e7a820 broke the C# pointer detection with some changes like this in the dump:
PointerAccess is a forwarding abstract:
The C# generator follows it away to look for the
cs.Pointer
type, but with the new dump theCast:unit._TestCSharp.SomeStruct
now gets in the way of that detection.The problem here is that the new typing is more correct: We cast the abstract to the underlying type, then access its field. I'm not even sure why it wasn't like that before because the
{ e with etype = t }
should also turn the expression into the underlying type.The text was updated successfully, but these errors were encountered: