Mailing-List: contact cygwin-apps-help AT sourceware DOT cygnus DOT com; run by ezmlm Sender: cygwin-apps-owner AT sourceware DOT cygnus DOT com List-Subscribe: List-Archive: List-Post: List-Help: , Delivered-To: mailing list cygwin-apps AT sources DOT redhat DOT com Date: Wed, 2 May 2001 00:01:13 -0400 From: Christopher Faylor To: cygwin-apps AT cygwin DOT com Subject: Re: gcc/ansi question Message-ID: <20010502000113.B26891@redhat.com> Reply-To: cygwin-apps AT cygwin DOT com Mail-Followup-To: cygwin-apps AT cygwin DOT com References: <20010501231814 DOT A26391 AT redhat DOT com> <3AEF8437 DOT DD541895 AT ece DOT gatech DOT edu> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.3.11i In-Reply-To: <3AEF8437.DD541895@ece.gatech.edu>; from cwilson@ece.gatech.edu on Tue, May 01, 2001 at 11:51:19PM -0400 On Tue, May 01, 2001 at 11:51:19PM -0400, Charles S. Wilson wrote: >Christopher Faylor wrote: >> >> It has been pointed out to me that I shouldn't be doing -Dunix when >> using the -ansi switch with gcc because the compiler should only define >> things which begin with an underscore. I can fix this easily. >> >> Does anyone know how MSVC handles the WIN32 definitions? Is there an >> equivalent switch for Windows which disables the definition of WIN32? >> My MSVC installation is currently hosed for some reason so I can't check >> this myself. > >/Usymbol undefines a specific symbol >/u (lowercase u) turns off every previously defined symbol > >"Neither of these options can be used to undefine symbols created with >the #define directive. Both options turn off the following >Microsoft-specific macros:" > >_CHAR_UNSIGNED >_CPPRTTI >_CPPUNWIND >_DLL >_M_IX86 >_MSC_VER >_WIN32 >_MT > >Seems kinda wierd to me that -Ufoobar will also cause _WIN32 to become >undefined, but that's what the docs say. Is there anything like a strict-ansi option? Or, doesn't msvc define anything without an underscore? I wonder if gcc is just wrong in defining WIN32 and WINNT. cgf