> That said, I noticed you can't use scope (or const scope) and ref together, yet you can pass by in ref. since in is supposed to be const scope, so I'm a bit confused.

I think that's just part of the quirkiness of the implementation. i.e. it's a bug. I think there are also other parameter storage class combinations which should work but are rejected by the compiler as an invalid combination.