]> git.saurik.com Git - wxWidgets.git/commitdiff
Do not define __VISUALC__ for Intel C++ compiler under Windows.
authorVadim Zeitlin <vadim@wxwidgets.org>
Mon, 30 Sep 2013 23:49:21 +0000 (23:49 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Mon, 30 Sep 2013 23:49:21 +0000 (23:49 +0000)
This is confusing and makes it more difficult to test for the "real" MSVC,
test for __INTELC__ explicitly wherever needed instead.

Also document __INTELC__ in our list of compilers.

Closes #15359.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74888 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/doxygen/mainpages/const_cpp.h
include/wx/chartype.h
include/wx/compiler.h
include/wx/filefn.h
include/wx/wxcrt.h
include/wx/wxcrtbase.h
src/common/filefn.cpp

index d995747c5d48ad49d769dd3638889354f6de4308..8b827cf3a3ae4f6136862752c9868e8d0c901db2 100644 (file)
@@ -147,6 +147,7 @@ compiler used.
 @itemdef{__EVC4__, Embedded Visual C++ 4 (can be only used for building wxWinCE)}
 @itemdef{__GNUG__, Gnu C++ on any platform, see also wxCHECK_GCC_VERSION}
 @itemdef{__GNUWIN32__, Gnu-Win32 compiler, see also wxCHECK_W32API_VERSION}
+@itemdef{__INTELC__, Intel C++ compiler}
 @itemdef{__MINGW32__, Either MinGW32 or MinGW-w64 in either 32 or 64 bits}
 @itemdef{__MINGW32_TOOLCHAIN, MinGW32 only (32 bits only right now)}
 @itemdef{__MINGW64__, MinGW-w64 in 64 bit builds}
index 5217258d1b54b7fdea566006cf9097ef916c5cd3..fbc307deb0f18ad91a0f1de198eaf74189813426 100644 (file)
@@ -90,7 +90,7 @@
 /* -------------------------------------------------------------------------- */
 
 /* VC++ and BC++ starting with 5.2 have TCHAR support */
-#ifdef __VISUALC__
+#if defined(__VISUALC__) || (defined(__WINDOWS__) && defined(__INTELC__))
     #define wxHAVE_TCHAR_SUPPORT
 #elif defined(__BORLANDC__) && (__BORLANDC__ >= 0x520)
     #define wxHAVE_TCHAR_SUPPORT
index a25eddc04cf51ff8a2ba06e5697e6cee51d11049..abca4e185ca253770d82a333cfbb0436cf7c6390 100644 (file)
     Compiler detection and related helpers.
  */
 
-/*
-    Notice that Intel compiler can be used as Microsoft Visual C++ add-on and
-    so we should define both __INTELC__ and __VISUALC__ for it.
- */
 #ifdef __INTEL_COMPILER
 #   define __INTELC__
-#endif
-
-#if defined(_MSC_VER)
+#elif defined(_MSC_VER)
     /*
        define another standard symbol for Microsoft Visual C++: the standard
        one (_MSC_VER) is also defined by some other compilers.
index a5bcd7e3fcb47cab1cee585f4881984038d5a870..48f30f8c0b8ba7ec7d7494e66e3bbbb09747d5ac 100644 (file)
@@ -92,7 +92,7 @@
     #endif
 #endif
 
-#if defined(__VISUALC__) && !defined(__WXWINCE__)
+#if (defined(__VISUALC__) && !defined(__WXWINCE__)) || (defined(__WINDOWS__) && defined (__INTELC__))
     typedef _off_t off_t;
 #elif defined(__SYMANTEC__)
     typedef long off_t;
@@ -187,7 +187,7 @@ enum wxPosixPermissions
     #define   wxStructStat struct _stat
 #elif (defined(__WINDOWS__) || defined(__OS2__)) && \
       ( \
-        defined(__VISUALC__) || \
+        (defined(__VISUALC__) || (defined(__WINDOWS__) && defined (__INTELC__))) || \
         defined(__MINGW64__) || \
         (defined(__MINGW32__) && !defined(__WINE__) && \
                                 wxCHECK_W32API_VERSION(0, 5)) || \
@@ -201,10 +201,10 @@ enum wxPosixPermissions
     #undef wxHAS_HUGE_STDIO_FILES
 
     // detect compilers which have support for huge files
-    #if defined(__VISUALC__)
+    #if (defined(__VISUALC__) || (defined(__WINDOWS__) && defined (__INTELC__)))
         #define wxHAS_HUGE_FILES 1
     #elif defined(__MINGW32__) || defined(__MINGW64__)
-        #define wxHAS_HUGE_FILES 1
+        #define wxHAS_HUGE_FILES 1f
     #elif defined(_LARGE_FILES)
         #define wxHAS_HUGE_FILES 1
     #endif
@@ -476,7 +476,6 @@ enum wxPosixPermissions
     #define   wxSeek       lseek
     #define   wxFsync      fsync
     #define   wxEof        eof
-
     #define   wxCRT_MkDir      mkdir
     #define   wxCRT_RmDir      rmdir
 
index dd579364fafe48f3151cbc2da2fcfb80b60fc373..8164b26f14177e16e438d4bc6f279bcfd9cb9247 100644 (file)
@@ -17,7 +17,7 @@
 
 #ifndef __WX_SETUP_H__
 // For non-configure builds assume vsscanf is available, if not Visual C or DMC
-#if !defined (__VISUALC__) && !defined (__DMC__)
+#if !defined (__VISUALC__) && !(defined(__WINDOWS__) && defined(__INTELC__)) && !defined (__DMC__)
     #define HAVE_VSSCANF 1
 #endif
 #endif
index 16f6499229ae96e2217105dfe8d4c9c98561e6a7..79e437850ad7e97b85ccb7999e0dcfc040bdedd9 100644 (file)
@@ -165,7 +165,7 @@ WXDLLIMPEXP_BASE void *calloc( size_t num, size_t size );
 
 /* Almost all compilers have strdup(), but VC++ and MinGW call it _strdup().
    And it's not available in MinGW strict ANSI mode nor under Windows CE. */
-#if (defined(__VISUALC__) && __VISUALC__ >= 1400)
+#if (defined(__VISUALC__) && __VISUALC__ >= 1400) || (defined(__VISUAC__) && defined (__INTELC__))
     #define wxCRT_StrdupA _strdup
 #elif defined(__MINGW32__)
     #ifndef __WX_STRICT_ANSI_GCC__
index 4b87feb7db67e7cc19852f8a0f444a4a277b7fb9..8d68fee7dbefd2867780feb5c6a859f4d0c8da9d 100644 (file)
@@ -1191,6 +1191,7 @@ wxRenameFile(const wxString& file1, const wxString& file2, bool overwrite)
 bool wxRemoveFile(const wxString& file)
 {
 #if defined(__VISUALC__) \
+ || (defined(__WINDOWS__) && defined(__INTELC__)) \
  || defined(__BORLANDC__) \
  || defined(__WATCOMC__) \
  || defined(__DMC__) \