
www.Usenet.com
| <-- __Chronological__ --> | <-- __Thread__ --> |
Malcolm, >> Second: i'd expect VO each time it uses your construct to >> internally perform a RegisterKid, so if the GC moves the >> string the pointer will >> be updated . > y:=psz(_cast, x) >means forget everything you knew about x and treat it as a >psz and store it is y Yep. But look back to the beginning of the thread: Marc wrote PSZ( myVar) - not _cast... So, imo, it would make sense, when the compiler looks at myVar, to try to check its type (should be string, after all) and does a registerkid. > registerkid(@y...) > y:=psz(_cast, x) >means y is a pointer to dynamic memory, update it whenever >you move the memory whose address is stored in y, put the address >of the string in y. > >So you only get registerkid for static datatypes (or dynamic datatypes >in static structs) when you ask for it. > Karl
| <-- __Chronological__ --> | <-- __Thread__ --> |