Hey Tom,
in NativeCall, "is rw" has a very special meaning. For example, if you
have "int32 $foo is rw", you'll actually give the native function a
pointer to an int, and perl6 will make that work out for you properly if
you have an "int" or an "Int" variable that you pass.
Apparently we don't give a good error message when you say you want the
CArray[uint32] to be passed as is, but accidentally declared it "is rw"
in the signature.
Can you see if removing the "is rw" from the CArray makes things work?
- Timo