I have a weird issue with php's gmp library every once in a while (about every 3 hours of running the program) one of my gmp resource variables gets assigned Resource id #-2147483648 and my program fails. This consistently happens. I've stopped my program from crashing by testing that my variable, $NumberToTest, is still a type resource before repeating the loop but that only stops the crashing and doesn't solve the problem.
Additionally I've added a print statement to print out the raw $NumberToTest value every once in a while to show me what it's resource id is. This value appears to be a random number. Could it be that there is a bug in the gmp resource id assignment that occasionally assigns a resource id that is out of range?
Attached is my program's file.
PrimeNumberBasket.php