Path: utzoo!utgpu!watmath!att!chinet!ignatz From: ignatz@chinet.chi.il.us (Dave Ihnat) Newsgroups: unix-pc.general Subject: Re: Nethack 3.0 compile hassle Summary: Absolutely wrong; not bitfields, optimization... Message-ID: <9155@chinet.chi.il.us> Date: 3 Aug 89 18:38:51 GMT References: <217@labii.UUCP> <936@kosman.UUCP> Reply-To: ignatz@chinet.chi.il.us (Dave Ihnat) Distribution: na Organization: Chinet - Public Access Unix Lines: 23 In article <936@kosman.UUCP> kevin@kosman.UUCP (Root) writes: >I deleted the rest of the message, but you're using the stock cc, right? > >You've also got a configuration switch defined in there somewhere that >turns on the use of bitfields to make structs more compact. > >The problem is that in this configuration, cc generates short branch >instructions for parts of 'if' commands, when it cannot really tell that >a short branch will get there. > >You have two solutions: turn off bitfields, or turn to gcc. Er...this has been hashed out in other messages, but as this just arrived, I want to emphasize the answer: It's Not Bitfields; it's the optimizer. Keep your bitfields, and turn on every option your heart desires. But, for every module that generates one of these messages, either manually compile it *without* optimization, or make a dependency in the makefile which does so. Thereafter, all works well with the stock development system. (at least for 3.51; I'd guess for 3.5 as well.) Dave Ihnat ignatz@homebru.chi.il.us (preferred return address) ignatz@chinet.chi.il.us