We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
https://github.com/cucapra/dahlia/blob/master/src/main/scala/typechecker/Subtyping.scala#L44-L48
The following results in an error from the type checker
Case 1
record point { x: bit<32> } def f(p: point): point = { let nextp: point = { x=p.x + 1 }; return nextp; }
Expected subtype of point in return, received: point
In this case areEqual receives the variable np as type TRecType while the return type is considered as TAlias.
areEqual
TRecType
TAlias
Case 2
record point { x: ubit<32> } let a: point = {x=10}; let b: point = (a as point);
The opposite scenario, areEqual receives TAlias for t1 and TRecType for t2.
The text was updated successfully, but these errors were encountered:
No branches or pull requests
https://github.com/cucapra/dahlia/blob/master/src/main/scala/typechecker/Subtyping.scala#L44-L48
The following results in an error from the type checker
Case 1
In this case
areEqual
receives the variable np as typeTRecType
while the return type is considered asTAlias
.Case 2
The opposite scenario,
areEqual
receivesTAlias
for t1 andTRecType
for t2.The text was updated successfully, but these errors were encountered: