Conversation
bbe8e6e to
a79f07c
Compare
95b62e8 to
639612a
Compare
b4bb2bd to
a43606d
Compare
| let Name lab = name.it in | ||
| T.{lab; typ = T.Env.find id.it env.vals}) labids)) | ||
| in | ||
| | ActorE (id, ds, fs, t0) -> |
There was a problem hiding this comment.
This code should probably check that t0 is well-formed in env (ie. no escape of types in ds)
There was a problem hiding this comment.
Good point. Same with BlockE then, right?
In fact, shouldn’t we simply insert a check_typ env (typ exp) at the top of check_exp, to always check the annotation in the outer scope? Will see if that works…
There was a problem hiding this comment.
Darn, tested the wrong binary. Actually shows issues with the output of tailcall. Let’s see if they are already on master…
There was a problem hiding this comment.
They are, see #208.
So I guess the present PR is not a regression. Will undo the extension of check_typ again and merge this.
crusso
left a comment
There was a problem hiding this comment.
This all looks good, but I wonder if we can't merge ActorE and NewObjE again in the future (and perhaps remove ActorDotE since we have the types available)
Maybe. I am not sure. |
to deal with varying output of “Illegal Instruction”.
to mimic It.NewObjE, i.e. take a list of declarations and fields. This gets rid of `field_exp`, and allows us to express the more powerful blocks-as-object features of Source.
1da41fe to
2dbcbd3
Compare
## Changelog for ic-ref: Branch: release-0.11 Commits: [dfinity-lab/ic-ref@9edd0fdd...824fd6d9](https://github.com/dfinity-lab/ic-ref/compare/9edd0fdda006519118ed40515b84c74f69c59bc1...824fd6d904b0635349820ca52262ce91fd9e695c) * [`ad7f600e`](https://github.com/dfinity-lab/ic-ref/commit/ad7f600ed6a95a1f30766addce6753f7106e75b9) ic-ref: Introduce Env data type ([dfinity-lab/ic-ref#198](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/ic-ref/issues/198)) * [`b9bd4d3f`](https://github.com/dfinity-lab/ic-ref/commit/b9bd4d3f2e28ce966258eba1ba2392035edc54fa) ic-ref: Introduce CanisterActions type * [`449da3c9`](https://github.com/dfinity-lab/ic-ref/commit/449da3c92d79b3fc0a1641631cc2f032f3f0d6f5) ic-ref-test: Systematically test System API availability * [`871565bb`](https://github.com/dfinity-lab/ic-ref/commit/871565bb5fede65cb21f3f2e23e3d884eee2a934) Remove IC.Logger (not really useful) * [`578465cc`](https://github.com/dfinity-lab/ic-ref/commit/578465cce07470a6f0498bf464e6e6a77cd8547e) ic-ref-test: Remove some tests that became obsolete * [`a30b0b4e`](https://github.com/dfinity-lab/ic-ref/commit/a30b0b4ee0cdaa9a7485522d87c9e5bb41f3903b) Bump nixpkgs to 20.09 ([dfinity-lab/ic-ref#201](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/ic-ref/issues/201)) * [`89463035`](https://github.com/dfinity-lab/ic-ref/commit/8946303584e4b5c0d44990e9f58b177258ed425e) Update caba.project.freeeze file * [`f172aad1`](https://github.com/dfinity-lab/ic-ref/commit/f172aad192b63b9b8bd8314bcab1b7a95bde1784) ic-ref-test: No priming * [`449b3efc`](https://github.com/dfinity-lab/ic-ref/commit/449b3efc732be3445d67c56ecbfc423fb1ab1b03) ic-ref-test: Fix “call from query“ tests * [`824fd6d9`](https://github.com/dfinity-lab/ic-ref/commit/824fd6d904b0635349820ca52262ce91fd9e695c) ic-ref-test: Canister deletion tests
## Changelog for ic-ref: Branch: release-0.11 Commits: [dfinity-lab/ic-ref@9edd0fdd...824fd6d9](https://github.com/dfinity-lab/ic-ref/compare/9edd0fdda006519118ed40515b84c74f69c59bc1...824fd6d904b0635349820ca52262ce91fd9e695c) * [`ad7f600e`](https://github.com/dfinity-lab/ic-ref/commit/ad7f600ed6a95a1f30766addce6753f7106e75b9) ic-ref: Introduce Env data type ([dfinity-lab/ic-ref#198](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/ic-ref/issues/198)) * [`b9bd4d3f`](https://github.com/dfinity-lab/ic-ref/commit/b9bd4d3f2e28ce966258eba1ba2392035edc54fa) ic-ref: Introduce CanisterActions type * [`449da3c9`](https://github.com/dfinity-lab/ic-ref/commit/449da3c92d79b3fc0a1641631cc2f032f3f0d6f5) ic-ref-test: Systematically test System API availability * [`871565bb`](https://github.com/dfinity-lab/ic-ref/commit/871565bb5fede65cb21f3f2e23e3d884eee2a934) Remove IC.Logger (not really useful) * [`578465cc`](https://github.com/dfinity-lab/ic-ref/commit/578465cce07470a6f0498bf464e6e6a77cd8547e) ic-ref-test: Remove some tests that became obsolete * [`a30b0b4e`](https://github.com/dfinity-lab/ic-ref/commit/a30b0b4ee0cdaa9a7485522d87c9e5bb41f3903b) Bump nixpkgs to 20.09 ([dfinity-lab/ic-ref#201](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity-lab/ic-ref/issues/201)) * [`89463035`](https://github.com/dfinity-lab/ic-ref/commit/8946303584e4b5c0d44990e9f58b177258ed425e) Update caba.project.freeeze file * [`f172aad1`](https://github.com/dfinity-lab/ic-ref/commit/f172aad192b63b9b8bd8314bcab1b7a95bde1784) ic-ref-test: No priming * [`449b3efc`](https://github.com/dfinity-lab/ic-ref/commit/449b3efc732be3445d67c56ecbfc423fb1ab1b03) ic-ref-test: Fix “call from query“ tests * [`824fd6d9`](https://github.com/dfinity-lab/ic-ref/commit/824fd6d904b0635349820ca52262ce91fd9e695c) ic-ref-test: Canister deletion tests
## Changelog for candid: Branch: master Commits: [dfinity/candid@b319e249...a3db8ae1](dfinity/candid@b319e24...a3db8ae) * [`a3db8ae1`](dfinity/candid@a3db8ae) derive candid_method(init) ([dfinity/candid#201](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity/candid/issues/201))
## Changelog for candid: Branch: master Commits: [dfinity/candid@b319e249...a3db8ae1](dfinity/candid@b319e24...a3db8ae) * [`a3db8ae1`](dfinity/candid@a3db8ae) derive candid_method(init) ([dfinity/candid#201](http://r.duckduckgo.com/l/?uddg=https://github.com/dfinity/candid/issues/201))
## Changelog for ic-hs: Branch: master Commits: [dfinity/ic-hs@52369fa1...f092a2d5](dfinity/ic-hs@52369fa...f092a2d) * [`12590345`](dfinity/ic-hs@1259034) bump cachix/install-nix-action ([dfinity/ic-hs#201](https://github.com/dfinity/ic-hs/issues/201)) * [`2ef5690c`](dfinity/ic-hs@2ef5690) Bump openssl from 0.10.48 to 0.10.55 in /httpbin-rs ([dfinity/ic-hs#202](https://github.com/dfinity/ic-hs/issues/202)) * [`46af8266`](dfinity/ic-hs@46af826) sync httpbin implementation with ic repo ([dfinity/ic-hs#193](https://github.com/dfinity/ic-hs/issues/193)) * [`1fd276eb`](dfinity/ic-hs@1fd276e) implement Call context removal transition ([dfinity/ic-hs#191](https://github.com/dfinity/ic-hs/issues/191)) * [`11c00d2a`](dfinity/ic-hs@11c00d2) catch HTTP exception from HTTPS outcalls ([dfinity/ic-hs#195](https://github.com/dfinity/ic-hs/issues/195)) * [`9eb5bf48`](dfinity/ic-hs@9eb5bf4) deleted call contexts prevent canister from stopping (again) ([dfinity/ic-hs#190](https://github.com/dfinity/ic-hs/issues/190)) * [`f092a2d5`](dfinity/ic-hs@f092a2d) implement and test canister history ([dfinity/ic-hs#198](https://github.com/dfinity/ic-hs/issues/198))
## Changelog for ic-hs: Branch: master Commits: [dfinity/ic-hs@52369fa1...f092a2d5](dfinity/ic-hs@52369fa...f092a2d) * [`12590345`](dfinity/ic-hs@1259034) bump cachix/install-nix-action ([dfinity/ic-hs#201](https://github.com/dfinity/ic-hs/issues/201)) * [`2ef5690c`](dfinity/ic-hs@2ef5690) Bump openssl from 0.10.48 to 0.10.55 in /httpbin-rs ([dfinity/ic-hs#202](https://github.com/dfinity/ic-hs/issues/202)) * [`46af8266`](dfinity/ic-hs@46af826) sync httpbin implementation with ic repo ([dfinity/ic-hs#193](https://github.com/dfinity/ic-hs/issues/193)) * [`1fd276eb`](dfinity/ic-hs@1fd276e) implement Call context removal transition ([dfinity/ic-hs#191](https://github.com/dfinity/ic-hs/issues/191)) * [`11c00d2a`](dfinity/ic-hs@11c00d2) catch HTTP exception from HTTPS outcalls ([dfinity/ic-hs#195](https://github.com/dfinity/ic-hs/issues/195)) * [`9eb5bf48`](dfinity/ic-hs@9eb5bf4) deleted call contexts prevent canister from stopping (again) ([dfinity/ic-hs#190](https://github.com/dfinity/ic-hs/issues/190)) * [`f092a2d5`](dfinity/ic-hs@f092a2d) implement and test canister history ([dfinity/ic-hs#198](https://github.com/dfinity/ic-hs/issues/198))
to mimic It.NewObjE, i.e. take a list of declarations and fields. This gets rid of
field_exp, and allows us to express the more powerful blocks-as-object features of Source.It still has a binder for
this, so that we don't regress functionality.This obsoletes #189.