On 16 dec '11, Michael Van Canneyt wrote:
> On Fri, 16 Dec 2011, dhkblas...@zeelandnet.nl [1]wrote: > >> On implementing a linked list I hit to some unexpected (doesn't mean incorrect though) behaviour. ptest = ^test; test = record p: pointer; end; new(mytest); When I allocate "mytest" the pointer variable "p" is initialized as $ffffffff instead of nil as I did suspect. In my code though I am relying on the fact that new pointers are indeed nil so I can allocate them accordingly. How can I force and rely on the fact that p is always nil? What is the correct procedure here? > > Newly allocated memory is never zeroed out. You must do this manually with FillChar or FillWord. > This is only done automatically for class instances. > > I will add a note to the docs. > > Michael. I wasn't sure about this, but now I know. Thanks Michael. Links: ------ [1] mailto:dhkblas...@zeelandnet.nl
_______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal