static as far I can explain means that whatever is declared with static will exist in a single place in memory as a single instance for everyone, kind of a shared variable or function.
so generally is not a good idea to declare a static variable that is not constant unless you need something like a global counter.
However you may have a static function that does not change any values and only accepts values a returns other values, in that case I see no problem there.
However how Martijn explained is always better to test your code understress. I for example don't know what to expect of static functions that call objects