X-Authentication-Warning: kendall.sfbr.org: jeffw set sender to jeffw AT darwin DOT sfbr DOT org using -f Date: Mon, 30 Apr 2001 09:37:58 -0500 From: JT Williams To: djgpp AT delorie DOT com Subject: __DJGPP__ and MSDOS Message-ID: <20010430093758.A5379@kendall.sfbr.org> Mail-Followup-To: djgpp AT delorie DOT com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i Reply-To: djgpp AT delorie DOT com When are __DJGPP__ and __MSDOS__ guaranteed to be defined and valid for #ifdef testing? My experiments lead me to believe that __MSDOS__ is defined `immediately' by the preprocessor (by virtue of using a gcc that was built for DOS), but that __DJGPP__ is not defined until I #include a *system* header. Therefore, in the following sequence #include "foo.h" #include [rest of code] I can validly #ifdef __MSDOS__ inside "foo.h", but I have to wait until _after_ to validly #ifdef __DJGPP__? Which would argue for always #include'ing system headers first, right? -- TIA/jtw