When evaluating the type of a node call, check that the arguments and
the parameters input types are compatible with Unify.f. Apply (if necessary) the resulting substitution to the output parameters. Also, when checking array concat, try to unify the types of both arrays instead of just checking their equality. This of course triggers some errors in the non-reg tests. One of this error is due to a bug in the parser, where the list of parameter was inversed twice. I've also fixed that in this change.
Showing
- src/TODO 0 additions, 1 deletionsrc/TODO
- src/evalType.ml 27 additions, 19 deletionssrc/evalType.ml
- src/parser.mly 2 additions, 2 deletionssrc/parser.mly
- src/test/should_work/NONREG/Watch.lus 0 additions, 1 deletionsrc/test/should_work/NONREG/Watch.lus
- src/test/should_work/call/call06.lus 2 additions, 3 deletionssrc/test/should_work/call/call06.lus
- src/test/test.res.exp 66 additions, 59 deletionssrc/test/test.res.exp
Loading
Please register or sign in to comment