I only posted the bits exactly relating to the variable concerned. It is of course in a package and has "use stricts" and "use warnings". I also of course thought it should not be generating those errors which is why I am having a problem. I am trying to get a complete example but everytime I get close the problem disappears. The race is not so much who can help me spot the problem, but rather which happens first: I find the problem or I go mad.