cvs: ZendEngine2 / zend_compile.h zend_language_scanner.l
| From: | Andrei Zmievski | Date: | Thu, 11 May 2006 18:22:09 +0000 |
| Subject: | cvs: ZendEngine2 / zend_compile.h zend_language_scanner.l | ||
| Groups: | php.zend-engine.cvs | ||
| Request: | Send a blank email to php-zend-engine-cvs+get-4864@lists.php.net to get a copy of this message | ||
andrei Thu May 11 18:22:09 2006 UTC
Modified files:
/ZendEngine2 zend_compile.h zend_language_scanner.l
Log:
Adjust API for scanning INI files as UTF-8.
http://cvs.php.net/viewcvs.cgi/ZendEngine2/zend_compile.h?r1=1.340&r2=1.341&diff_format=u Index: ZendEngine2/zend_compile.h diff -u ZendEngine2/zend_compile.h:1.340 ZendEngine2/zend_compile.h:1.341 --- ZendEngine2/zend_compile.h:1.340 Thu Mar 23 09:44:30 2006 +++ ZendEngine2/zend_compile.h Thu May 11 18:22:09 2006 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: zend_compile.h,v 1.340 2006/03/23 09:44:30 tony2001 Exp $ */ +/* $Id: zend_compile.h,v 1.341 2006/05/11 18:22:09 andrei Exp $ */ #ifndef ZEND_COMPILE_H #define ZEND_COMPILE_H @@ -342,7 +342,7 @@ ZEND_API zstr zend_get_compiled_variable_name(zend_op_array *op_array, zend_uint var, int* name_len); ZEND_API int zend_prepare_scanner_converters(const char *onetime_encoding, int run_time TSRMLS_DC); -ZEND_API int zend_convert_scanner_output(UChar **target, int *target_len, const char *source, int source_len, UErrorCode *status TSRMLS_DC); +ZEND_API int zend_convert_scanner_output(UConverter *conv, UChar **target, int *target_len, const char *source, int source_len, UErrorCode *status TSRMLS_DC); int zend_unicode_yyinput(zend_file_handle *file_handle, char *buf, size_t len TSRMLS_DC); #ifdef ZTS @@ -538,6 +538,7 @@ ZEND_API int zend_cleanup_class_data(zend_class_entry **pce TSRMLS_DC); ZEND_API int zend_cleanup_function_data(zend_function *function TSRMLS_DC); ZEND_API int zend_cleanup_function_data_full(zend_function *function TSRMLS_DC); +ZEND_API int zend_copy_scanner_string(zval *zendlval, char *str, zend_uint str_len, zend_uchar type, UConverter *conv TSRMLS_DC); ZEND_API void destroy_zend_function(zend_function *function TSRMLS_DC); ZEND_API void zend_function_dtor(zend_function *function); http://cvs.php.net/viewcvs.cgi/ZendEngine2/zend_language_scanner.l?r1=1.153&r2=1.154&diff_format=u Index: ZendEngine2/zend_language_scanner.l diff -u ZendEngine2/zend_language_scanner.l:1.153 ZendEngine2/zend_language_scanner.l:1.154 --- ZendEngine2/zend_language_scanner.l:1.153 Thu May 4 21:44:54 2006 +++ ZendEngine2/zend_language_scanner.l Thu May 11 18:22:09 2006 @@ -19,7 +19,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: zend_language_scanner.l,v 1.153 2006/05/04 21:44:54 andrei Exp $ */ +/* $Id: zend_language_scanner.l,v 1.154 2006/05/11 18:22:09 andrei Exp $ */ #define yyleng SCNG(yy_leng) #define yytext SCNG(yy_text) @@ -411,13 +411,13 @@ return 0; } -static inline int zend_copy_string_value(zval *zendlval, char *str, zend_uint str_len, zend_uchar type TSRMLS_DC) +ZEND_API int zend_copy_scanner_string(zval *zendlval, char *str, zend_uint str_len, zend_uchar type, UConverter *conv TSRMLS_DC) { UErrorCode status = U_ZERO_ERROR; int consumed = 0; if (type == IS_UNICODE) { - consumed = zend_convert_scanner_output(&Z_USTRVAL_P(zendlval), &Z_USTRLEN_P(zendlval), str, str_len, &status TSRMLS_CC); + consumed = zend_convert_scanner_output(conv, &Z_USTRVAL_P(zendlval), &Z_USTRLEN_P(zendlval), str, str_len, &status TSRMLS_CC); if (U_FAILURE(status)) { zend_error(E_COMPILE_WARNING,"Illegal or truncated character in input: offset %d, state=%d", consumed, YYSTATE); @@ -622,16 +622,16 @@ return zend_set_converter_encoding(&SCNG(output_conv), encoding); } -ZEND_API int zend_convert_scanner_output(UChar **target, int *target_len, const char *source, int source_len, UErrorCode *status TSRMLS_DC) +ZEND_API int zend_convert_scanner_output(UConverter *conv, UChar **target, int *target_len, const char *source, int source_len, UErrorCode *status TSRMLS_DC) { const char *source_consumed = NULL; /* set our custom callback with context */ - ucnv_setToUCallBack(SCNG(output_conv), zend_scanner_output_callback, &source_consumed, NULL, NULL, status); + ucnv_setToUCallBack(conv, zend_scanner_output_callback, &source_consumed, NULL, NULL, status); /* reset the error and perform conversion */ *status = U_ZERO_ERROR; - zend_convert_to_unicode(SCNG(output_conv), target, target_len, source, source_len, status); + zend_convert_to_unicode(conv, target, target_len, source, source_len, status); /* figure out how many source bytes were consumed */ if (U_SUCCESS(*status)) { @@ -1032,7 +1032,7 @@ HANDLE_NEWLINES(yytext, yyleng); - if (!zend_copy_string_value(zendlval, yytext+1, yyleng-2, IS_UNICODE TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext+1, yyleng-2, IS_UNICODE, SCNG(output_conv) TSRMLS_CC)) { return 0; } @@ -1174,7 +1174,7 @@ HANDLE_NEWLINES(yytext, yyleng); - if (!zend_copy_string_value(zendlval, yytext+1, yyleng-2, IS_UNICODE TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext+1, yyleng-2, IS_UNICODE, SCNG(output_conv) TSRMLS_CC)) { return 0; } @@ -1558,7 +1558,7 @@ <ST_LOOKING_FOR_PROPERTY>{LABEL} { yy_pop_state(TSRMLS_C); - if (!zend_copy_string_value(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; } if (UG(unicode) && !zend_check_and_normalize_identifier(zendlval)) { @@ -1836,7 +1836,7 @@ <ST_LOOKING_FOR_VARNAME>{LABEL} { - if (!zend_copy_string_value(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; } if (UG(unicode) && !zend_check_and_normalize_identifier(zendlval)) { @@ -1889,7 +1889,7 @@ } <ST_DOUBLE_QUOTES,ST_BACKQUOTE,ST_HEREDOC>{LNUM}|{HNUM} { /* treat numbers (almost) as strings inside encapsulated strings */ - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_NUM_STRING; @@ -2063,7 +2063,7 @@ } <ST_IN_SCRIPTING,ST_DOUBLE_QUOTES,ST_HEREDOC,ST_BACKQUOTE>"$"{LABEL} { - if (!zend_copy_string_value(zendlval, (yytext+1), (yyleng-1), UG(unicode)?IS_UNICODE:IS_STRING TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, (yytext+1), (yyleng-1), UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; } if (UG(unicode) && !zend_check_and_normalize_identifier(zendlval)) { @@ -2073,7 +2073,7 @@ } <ST_IN_SCRIPTING>{LABEL} { - if (!zend_copy_string_value(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; } if (UG(unicode) && !zend_check_and_normalize_identifier(zendlval)) { @@ -2083,7 +2083,7 @@ } <ST_DOUBLE_QUOTES,ST_BACKQUOTE,ST_HEREDOC>{LABEL} { - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_STRING; @@ -2309,7 +2309,7 @@ return T_END_HEREDOC; } else { CG(zend_lineno)++; - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_STRING; @@ -2319,14 +2319,14 @@ <ST_DOUBLE_QUOTES,ST_BACKQUOTE,ST_HEREDOC>{ESCAPED_AND_WHITESPACE} { HANDLE_NEWLINES(yytext, yyleng); - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_ENCAPSED_AND_WHITESPACE; } <ST_DOUBLE_QUOTES>[`]+ { - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_ENCAPSED_AND_WHITESPACE; @@ -2334,7 +2334,7 @@ <ST_BACKQUOTE>["]+ { - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_ENCAPSED_AND_WHITESPACE; @@ -2406,7 +2406,7 @@ return 0; } } else { - zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC); + zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC); return T_STRING; } } @@ -2432,13 +2432,13 @@ return 0; } } else { - zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC); + zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC); return T_STRING; } } <ST_DOUBLE_QUOTES,ST_BACKQUOTE,ST_HEREDOC>"\\{" { - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_STRING; @@ -2462,7 +2462,7 @@ Z_LVAL_P(zendlval) = (long) yytext[1]; break; default: - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_BAD_CHARACTER; @@ -2473,7 +2473,7 @@ <ST_HEREDOC>["'`]+ { - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_ENCAPSED_AND_WHITESPACE;
http://cvs.php.net/viewcvs.cgi/ZendEngine2/zend_compile.h?r1=1.340&r2=1.341&diff_format=u Index: ZendEngine2/zend_compile.h diff -u ZendEngine2/zend_compile.h:1.340 ZendEngine2/zend_compile.h:1.341 --- ZendEngine2/zend_compile.h:1.340 Thu Mar 23 09:44:30 2006 +++ ZendEngine2/zend_compile.h Thu May 11 18:22:09 2006 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: zend_compile.h,v 1.340 2006/03/23 09:44:30 tony2001 Exp $ */ +/* $Id: zend_compile.h,v 1.341 2006/05/11 18:22:09 andrei Exp $ */ #ifndef ZEND_COMPILE_H #define ZEND_COMPILE_H @@ -342,7 +342,7 @@ ZEND_API zstr zend_get_compiled_variable_name(zend_op_array *op_array, zend_uint var, int* name_len); ZEND_API int zend_prepare_scanner_converters(const char *onetime_encoding, int run_time TSRMLS_DC); -ZEND_API int zend_convert_scanner_output(UChar **target, int *target_len, const char *source, int source_len, UErrorCode *status TSRMLS_DC); +ZEND_API int zend_convert_scanner_output(UConverter *conv, UChar **target, int *target_len, const char *source, int source_len, UErrorCode *status TSRMLS_DC); int zend_unicode_yyinput(zend_file_handle *file_handle, char *buf, size_t len TSRMLS_DC); #ifdef ZTS @@ -538,6 +538,7 @@ ZEND_API int zend_cleanup_class_data(zend_class_entry **pce TSRMLS_DC); ZEND_API int zend_cleanup_function_data(zend_function *function TSRMLS_DC); ZEND_API int zend_cleanup_function_data_full(zend_function *function TSRMLS_DC); +ZEND_API int zend_copy_scanner_string(zval *zendlval, char *str, zend_uint str_len, zend_uchar type, UConverter *conv TSRMLS_DC); ZEND_API void destroy_zend_function(zend_function *function TSRMLS_DC); ZEND_API void zend_function_dtor(zend_function *function); http://cvs.php.net/viewcvs.cgi/ZendEngine2/zend_language_scanner.l?r1=1.153&r2=1.154&diff_format=u Index: ZendEngine2/zend_language_scanner.l diff -u ZendEngine2/zend_language_scanner.l:1.153 ZendEngine2/zend_language_scanner.l:1.154 --- ZendEngine2/zend_language_scanner.l:1.153 Thu May 4 21:44:54 2006 +++ ZendEngine2/zend_language_scanner.l Thu May 11 18:22:09 2006 @@ -19,7 +19,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: zend_language_scanner.l,v 1.153 2006/05/04 21:44:54 andrei Exp $ */ +/* $Id: zend_language_scanner.l,v 1.154 2006/05/11 18:22:09 andrei Exp $ */ #define yyleng SCNG(yy_leng) #define yytext SCNG(yy_text) @@ -411,13 +411,13 @@ return 0; } -static inline int zend_copy_string_value(zval *zendlval, char *str, zend_uint str_len, zend_uchar type TSRMLS_DC) +ZEND_API int zend_copy_scanner_string(zval *zendlval, char *str, zend_uint str_len, zend_uchar type, UConverter *conv TSRMLS_DC) { UErrorCode status = U_ZERO_ERROR; int consumed = 0; if (type == IS_UNICODE) { - consumed = zend_convert_scanner_output(&Z_USTRVAL_P(zendlval), &Z_USTRLEN_P(zendlval), str, str_len, &status TSRMLS_CC); + consumed = zend_convert_scanner_output(conv, &Z_USTRVAL_P(zendlval), &Z_USTRLEN_P(zendlval), str, str_len, &status TSRMLS_CC); if (U_FAILURE(status)) { zend_error(E_COMPILE_WARNING,"Illegal or truncated character in input: offset %d, state=%d", consumed, YYSTATE); @@ -622,16 +622,16 @@ return zend_set_converter_encoding(&SCNG(output_conv), encoding); } -ZEND_API int zend_convert_scanner_output(UChar **target, int *target_len, const char *source, int source_len, UErrorCode *status TSRMLS_DC) +ZEND_API int zend_convert_scanner_output(UConverter *conv, UChar **target, int *target_len, const char *source, int source_len, UErrorCode *status TSRMLS_DC) { const char *source_consumed = NULL; /* set our custom callback with context */ - ucnv_setToUCallBack(SCNG(output_conv), zend_scanner_output_callback, &source_consumed, NULL, NULL, status); + ucnv_setToUCallBack(conv, zend_scanner_output_callback, &source_consumed, NULL, NULL, status); /* reset the error and perform conversion */ *status = U_ZERO_ERROR; - zend_convert_to_unicode(SCNG(output_conv), target, target_len, source, source_len, status); + zend_convert_to_unicode(conv, target, target_len, source, source_len, status); /* figure out how many source bytes were consumed */ if (U_SUCCESS(*status)) { @@ -1032,7 +1032,7 @@ HANDLE_NEWLINES(yytext, yyleng); - if (!zend_copy_string_value(zendlval, yytext+1, yyleng-2, IS_UNICODE TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext+1, yyleng-2, IS_UNICODE, SCNG(output_conv) TSRMLS_CC)) { return 0; } @@ -1174,7 +1174,7 @@ HANDLE_NEWLINES(yytext, yyleng); - if (!zend_copy_string_value(zendlval, yytext+1, yyleng-2, IS_UNICODE TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext+1, yyleng-2, IS_UNICODE, SCNG(output_conv) TSRMLS_CC)) { return 0; } @@ -1558,7 +1558,7 @@ <ST_LOOKING_FOR_PROPERTY>{LABEL} { yy_pop_state(TSRMLS_C); - if (!zend_copy_string_value(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; } if (UG(unicode) && !zend_check_and_normalize_identifier(zendlval)) { @@ -1836,7 +1836,7 @@ <ST_LOOKING_FOR_VARNAME>{LABEL} { - if (!zend_copy_string_value(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; } if (UG(unicode) && !zend_check_and_normalize_identifier(zendlval)) { @@ -1889,7 +1889,7 @@ } <ST_DOUBLE_QUOTES,ST_BACKQUOTE,ST_HEREDOC>{LNUM}|{HNUM} { /* treat numbers (almost) as strings inside encapsulated strings */ - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_NUM_STRING; @@ -2063,7 +2063,7 @@ } <ST_IN_SCRIPTING,ST_DOUBLE_QUOTES,ST_HEREDOC,ST_BACKQUOTE>"$"{LABEL} { - if (!zend_copy_string_value(zendlval, (yytext+1), (yyleng-1), UG(unicode)?IS_UNICODE:IS_STRING TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, (yytext+1), (yyleng-1), UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; } if (UG(unicode) && !zend_check_and_normalize_identifier(zendlval)) { @@ -2073,7 +2073,7 @@ } <ST_IN_SCRIPTING>{LABEL} { - if (!zend_copy_string_value(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, UG(unicode)?IS_UNICODE:IS_STRING, SCNG(output_conv) TSRMLS_CC)) { return 0; } if (UG(unicode) && !zend_check_and_normalize_identifier(zendlval)) { @@ -2083,7 +2083,7 @@ } <ST_DOUBLE_QUOTES,ST_BACKQUOTE,ST_HEREDOC>{LABEL} { - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_STRING; @@ -2309,7 +2309,7 @@ return T_END_HEREDOC; } else { CG(zend_lineno)++; - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_STRING; @@ -2319,14 +2319,14 @@ <ST_DOUBLE_QUOTES,ST_BACKQUOTE,ST_HEREDOC>{ESCAPED_AND_WHITESPACE} { HANDLE_NEWLINES(yytext, yyleng); - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_ENCAPSED_AND_WHITESPACE; } <ST_DOUBLE_QUOTES>[`]+ { - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_ENCAPSED_AND_WHITESPACE; @@ -2334,7 +2334,7 @@ <ST_BACKQUOTE>["]+ { - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_ENCAPSED_AND_WHITESPACE; @@ -2406,7 +2406,7 @@ return 0; } } else { - zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC); + zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC); return T_STRING; } } @@ -2432,13 +2432,13 @@ return 0; } } else { - zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC); + zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC); return T_STRING; } } <ST_DOUBLE_QUOTES,ST_BACKQUOTE,ST_HEREDOC>"\\{" { - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_STRING; @@ -2462,7 +2462,7 @@ Z_LVAL_P(zendlval) = (long) yytext[1]; break; default: - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_BAD_CHARACTER; @@ -2473,7 +2473,7 @@ <ST_HEREDOC>["'`]+ { - if (!zend_copy_string_value(zendlval, yytext, yyleng, CG(literal_type) TSRMLS_CC)) { + if (!zend_copy_scanner_string(zendlval, yytext, yyleng, CG(literal_type), SCNG(output_conv) TSRMLS_CC)) { return 0; } return T_ENCAPSED_AND_WHITESPACE;