Thanks for the reply. I'm submitting an issue to premier support while posting.
Anyways, I managed to somewhat figure out what was causing the internal error through a process of elimination. /Oi seems to be triggering the internal error, however, it's equivalent, /Oi-, seems to trigger no error. /O1 (which, according to the documentation, also uses /Oi-) works fine, but /O2 and /O3 (which, too, uses /Oi-) trigger the same internal error.
So a temporary solution for myself was to use /O3 along with /Oi-.
It worked fine while I was using minimal optimizations but when I added all the other ones I was using before, "clif.cpp" compiled halfway (a bit furthur than before) but "mcpcom" started using over 2 gigabytes of memory. I'll try to find out what's causing that, but if somebody else already knows, please let me know.