in reply to Re^2: error for undefined function that's been imported
in thread error for undefined function that's been imported

Could the inter-dependence on the modules to one another be causing this

This is all a guess, but...

Yes. Specifically, the subs you're trying to import (and the @EXPORT list, and I think &import itself for that matter) don't actually exist when import is called. Since use effectively runs inside a BEGIN block, the use Register line interrupts compilation of MyUserProfile to execute Register.pm. Then while compiling Register, the use MyUserProfile line will first attempt to require MyUserProfile, which is a no-op since it is already in %INC even though it hasn't finished compiling, and then it will import MyUserProfile, which is also a no-op since nothing in that package is defined yet (except what was exported to it by earlier use statements).

By the way, that's for the case where a script tries to use MyUserProfile without first doing a use Register. It looks like there are similar problems (with different functions) going the other way. Hence it "seems to happen in parts of the code that I'm NOT working on".