Derek Parnell wrote: > This is in contrast with structs, static (fixed-length) arrays, and basic > data types. In these cases, the function does get a copy of the parameter's > data. No, static arrays are 'reference' types. Meaning they are passed as just the address of the first element. You have to wrap them in a struct to get copy semantics for them.