In committing D104478 (commit 5fbe21a7748f91adbd1b16c95bbfe180642320a3) I messed up. Some parts of the diff,were omitted as I got confused about which of my trees was which. Significantly the out-of-class checking of parameter types was dropped (and an unneeded type setting).
Sorry about that.