Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!cs.utexas.edu!csd4.milw.wisc.edu!marque!lakesys!chad From: chad@lakesys.UUCP (D. Chadwick Gibbons) Newsgroups: comp.sources.games.bugs Subject: Re: Conquer 4.2 INFINITE SPILL MICROSOFT CC ERROR Keywords: internal error, navy.c Message-ID: <931@lakesys.UUCP> Date: 5 Aug 89 14:35:21 GMT References: <221@tnl.UUCP> Reply-To: chad@lakesys.UUCP (D. Chadwick Gibbons) Distribution: na Organization: Lake Systems - Milwaukee, Wisconsin Lines: 20 In article <221@tnl.UUCP> norstar@tnl.UUCP (Daniel Ray) writes: |the Microsoft C compiler yields the error: | Compiler error (Internal): Infinite spill This happens in quite a few programs when trying to compile them on any MicroSoft compiler. The problem is due to the way the compiler handlers register declerations. Too many register decelerations are supposed to be ignored, but they wind up confusing the cheap compiler. There is only one fix, but it can be done in two ways: a) remove all register decelerations for a given function, or b) remove one at a time, starting with the one which caused the error My experience has shown that generally this requires option "a" for some strange reason. Usually a function will get this if everything in it is made register, and it has more than seven register declerations...programs to look for this include practiaclly any game written: moria, nethack 3.0, omega, etc. -- D. Chadwick Gibbons, chad@lakesys.lakesys.com, ...!uunet!marque!lakesys!chad