in reply to string-eval code more than once
If you're certain the evalling of code is the way to go, then turn of the warning. Warning are not by definition things you do wrong - otherwise, they would be errors. Warnings are Perls way of saying "it may be that you are wrong here, but it may also be that I am wrong assuming you are wrong". Clearly, if you want to re-eval the code, you intent to redefine the sub, and the correct thing to do is to shut off the warning.