]> granicus.if.org Git - php/commitdiff
- MFH: improve previous fix for scan, disable optimizer only for scan() using #pragma...
authorPierre Joye <pajoye@php.net>
Sat, 2 Aug 2008 16:50:35 +0000 (16:50 +0000)
committerPierre Joye <pajoye@php.net>
Sat, 2 Aug 2008 16:50:35 +0000 (16:50 +0000)
ext/date/config.w32
ext/date/lib/parse_iso_intervals.re

index aa0bfe485863913e94c5ff0e9e47983afd230c96..483770d4a077741927aa0c7e24942cde10e1db4e 100755 (executable)
@@ -5,11 +5,6 @@ EXTENSION("date", "php_date.c", false, "-Iext/date/lib");
 ADD_SOURCES("ext/date/lib", "astro.c timelib.c dow.c parse_date.c parse_tz.c tm2unixtime.c unixtime2tm.c parse_iso_intervals.c interval.c", "date");
 AC_DEFINE('HAVE_DATE', 1, 'Have date/time support');
 
-// date parser's scan function too large for VC6 - VC7.x, drop the optimization solves the problem
-if (VCVERS<1400) {
- ADD_FLAG('CFLAGS_DATE', ' /O1 ');
-}
-
 var tl_config = FSO.CreateTextFile("ext/date/lib/timelib_config.h", true);
 tl_config.WriteLine("#include \"config.w32.h\"");
 tl_config.Close();
index 401225411ba0d110b160cb87f04582e747f8cea2..8fc741a5fcc07cad06af170c13d3326c7deda206 100644 (file)
@@ -268,6 +268,11 @@ static long timelib_get_zone(char **ptr, int *dst, timelib_time *t, int *tz_not_
        }                              \
 }
 
+/* date parser's scan function too large for VC6 - VC7.x
+   drop the optimization solves the problem */
+#ifdef PHP_WIN32
+#pragma optimize( "", off )
+#endif
 static int scan(Scanner *s)
 {
        uchar *cursor = s->cur;
@@ -422,6 +427,9 @@ isoweek          = year4 "-"? "W" weekofyear;
        }
 */
 }
+#ifdef PHP_WIN32
+#pragma optimize( "", on )
+#endif
 
 /*!max:re2c */