The following works fine under 5.0.7r1m. However, when I try to run it under 5.1.0r2 I get the following error each time I try to use what I want to be the global functions: # Variable "$previousFunction" is not imported. File 'Zip 100:Perl:Dump Data:DumpData'; Line 146 # Global symbol "previousFunction" requires explicit package name. File 'Zip 100:Perl:Dump Data:DumpData'; Line 146 # Variable "$currentFunction" is not imported. File 'Zip 100:Perl:Dump Data:DumpData'; Line 146 # Global symbol "currentFunction" requires explicit package name. This is a different error than if I tried to declare a global _after_ the "use strict 'vars'", so I really have no idea what's going on. Any ideas? Is this a bug? I also tried using "Begin { use strict 'vars'; }", but that didn't give the desired results (it let me declare globals after the use strict vars command). It also doesn't work when I put "local" and "my" in front of the globals (local to the entire program i.e., a global?). require "CommConnect.pl"; $currentFunction; $previousFunction; $wantState; use strict 'vars'; PrepareTool(); OpenToolConnection(); do { StartUp(); } until 0; rob -- <mailto: "Robert A. Decker" comrade@umich.edu> Programmer Analyst - Health Media Research Lab University of Michigan Comprehensive Cancer Center "Get A Life" quote #5: "In my heart I know you're right, but my perfectly functioning brain says you're a horse's ass." -Bob Elliott