diff options
Diffstat (limited to 'include/ruby')
-rw-r--r-- | include/ruby/win32.h | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/include/ruby/win32.h b/include/ruby/win32.h index 79e3396892..3b7b113133 100644 --- a/include/ruby/win32.h +++ b/include/ruby/win32.h @@ -46,17 +46,19 @@ extern "C" { #undef finally #undef leave -#if defined(__cplusplus) -extern "C++" { -#endif - #include <stdio.h> #include <stdlib.h> #include <string.h> #include <direct.h> #include <process.h> #include <time.h> +#if defined(__cplusplus) && defined(_MSC_VER) && _MSC_VER == 1200 +extern "C++" { /* template without extern "C++" */ +#endif #include <math.h> +#if defined(__cplusplus) && defined(_MSC_VER) && _MSC_VER == 1200 +} +#endif #include <signal.h> #include <sys/stat.h> #include <sys/types.h> @@ -88,10 +90,6 @@ typedef unsigned int uintptr_t; # endif #endif -#if defined(__cplusplus) -} -#endif - #ifdef _M_IX86 # define WIN95 1 #else |