summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnatol Belski <ab@php.net>2014-10-28 19:18:47 +0100
committerAnatol Belski <ab@php.net>2014-10-29 15:30:00 +0100
commitcf581178e7123a3e5328cd0ed8d9f2e19fee38c1 (patch)
tree310712aabb7b0e4d5767a9129b12d5eb0d2ee60c
parentd9d16d2e68c897fe02848e96623aaa73d170fb39 (diff)
downloadphp-git-cf581178e7123a3e5328cd0ed8d9f2e19fee38c1.tar.gz
fix "inconsistent dll linkage" warning caused by bison
stdlib.h might not be always using _STDLIB_H, that will move bison to redeclare the malloc/free prototypes.
-rw-r--r--Zend/zend_ini_parser.y5
-rw-r--r--Zend/zend_language_parser.y5
2 files changed, 10 insertions, 0 deletions
diff --git a/Zend/zend_ini_parser.y b/Zend/zend_ini_parser.y
index 90e0fdc007..d04988442f 100644
--- a/Zend/zend_ini_parser.y
+++ b/Zend/zend_ini_parser.y
@@ -43,6 +43,11 @@ int ini_parse(void);
#define ZEND_INI_PARSER_CB (CG(ini_parser_param))->ini_parser_cb
#define ZEND_INI_PARSER_ARG (CG(ini_parser_param))->arg
+#ifdef _MSC_VER
+#define YYMALLOC malloc
+#define YYFREE free
+#endif
+
/* {{{ zend_ini_do_op()
*/
static void zend_ini_do_op(char type, zval *result, zval *op1, zval *op2)
diff --git a/Zend/zend_language_parser.y b/Zend/zend_language_parser.y
index d25e1d2e07..88286203da 100644
--- a/Zend/zend_language_parser.y
+++ b/Zend/zend_language_parser.y
@@ -43,6 +43,11 @@ static YYSIZE_T zend_yytnamerr(char*, const char*);
#define YYERROR_VERBOSE
#define YYSTYPE zend_parser_stack_elem
+#ifdef _MSC_VER
+#define YYMALLOC malloc
+#define YYFREE free
+#endif
+
%}
%pure_parser