@fivemack was right in saying that the process was terminated. I was running GMP-ECM on Windows 7 as a Python subprocess. Akos Kiss at
https://bugs.python.org/issue31863 reports that processes CAN return exit code 15 when terminated on Windows. In my case, the GMP-ECM subprocess was terminated by another process running on the same PC which was over-zealous in trying to clean up orphaned subprocesses.