From: Simon Strandgaard <0bz63fz3m1qt3001@...> Date: 2003-06-25T08:53:46+09:00 Subject: Re: Array#pop doesn't remove last element? On Tue, 24 Jun 2003 02:46:44 +0200, Simon Strandgaard wrote: > On Tue, 24 Jun 2003 02:36:55 +0200, Simon Strandgaard wrote: >> >> I don't understand why this exception occur... can someone enligthen me ? > > OK.. I solved it.. This was because @left contained a vspace element. > I assumed too much as usual. Finaly, 2 minutes ago I woke up (I am about to go to sleep). I had an illegal a construction, like this: objs = @left objs << @current if @current The reason why its *illegal* in my case, is because @left must stay untouched. I had totaly forgotten about references. It should have been: objs = @left.clone objs << @current if @current @left.freeze really helped identify what was wrong. I better remember using #freeze much more. I have only limited used this feature before. Any hints on how one should avoid such dangerous constructions in the future ? Perhaps create an container where @left is a read-only variable, and then inherit from this container ? -- Simon Strandgaard