summaryrefslogtreecommitdiff
path: root/ext/tokenizer
diff options
context:
space:
mode:
authorMark A. Hershberger <mah@debian.(none)>2009-03-25 00:37:48 -0400
committerMark A. Hershberger <mah@debian.(none)>2009-03-25 00:37:48 -0400
commiteddbbea4325e602ddc87c545531609132d4f0e3b (patch)
treef0994206a7e0a6251be7cc6729ba480f0c8729c2 /ext/tokenizer
parent2d4e5b09576bb4f0ba716cc82cdf29ea04d9184b (diff)
downloadphp-eddbbea4325e602ddc87c545531609132d4f0e3b.tar.gz
Imported Upstream version 5.2.3upstream/5.2.3
Diffstat (limited to 'ext/tokenizer')
-rw-r--r--ext/tokenizer/Makefile.frag4
-rw-r--r--ext/tokenizer/php_tokenizer.h3
-rw-r--r--ext/tokenizer/tests/001.phpt4
-rw-r--r--ext/tokenizer/tokenizer.c15
4 files changed, 12 insertions, 14 deletions
diff --git a/ext/tokenizer/Makefile.frag b/ext/tokenizer/Makefile.frag
index eaca6e7f4..6802d40e9 100644
--- a/ext/tokenizer/Makefile.frag
+++ b/ext/tokenizer/Makefile.frag
@@ -1,2 +1,2 @@
-Zend/zend_language_parser.h:
-$(builddir)/tokenizer.lo: Zend/zend_language_parser.h
+$(top_srcdir)/Zend/zend_language_parser.h:
+$(builddir)/tokenizer.lo: $(top_srcdir)/Zend/zend_language_parser.h
diff --git a/ext/tokenizer/php_tokenizer.h b/ext/tokenizer/php_tokenizer.h
index 94c614a92..bd0eedeae 100644
--- a/ext/tokenizer/php_tokenizer.h
+++ b/ext/tokenizer/php_tokenizer.h
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_tokenizer.h,v 1.9.2.1.2.2 2007/01/01 09:36:09 sebastian Exp $ */
+/* $Id: php_tokenizer.h,v 1.9.2.1.2.3 2007/05/28 12:19:41 bjori Exp $ */
#ifndef PHP_TOKENIZER_H
#define PHP_TOKENIZER_H
@@ -37,7 +37,6 @@ extern zend_module_entry tokenizer_module_entry;
PHP_MINIT_FUNCTION(tokenizer);
PHP_MINFO_FUNCTION(tokenizer);
-PHP_FUNCTION(confirm_tokenizer_compiled); /* For testing, remove later. */
PHP_FUNCTION(token_get_all);
PHP_FUNCTION(token_name);
diff --git a/ext/tokenizer/tests/001.phpt b/ext/tokenizer/tests/001.phpt
index 36ed2696f..203e3c7dd 100644
--- a/ext/tokenizer/tests/001.phpt
+++ b/ext/tokenizer/tests/001.phpt
@@ -57,8 +57,6 @@ echo token_name(T_STRING_VARNAME), "\n";
echo token_name(T_VARIABLE), "\n";
echo token_name(T_NUM_STRING), "\n";
echo token_name(T_INLINE_HTML), "\n";
-echo token_name(T_CHARACTER), "\n";
-echo token_name(T_BAD_CHARACTER), "\n";
echo token_name(T_ENCAPSED_AND_WHITESPACE), "\n";
echo token_name(T_CONSTANT_ENCAPSED_STRING), "\n";
echo token_name(T_ECHO), "\n";
@@ -185,8 +183,6 @@ T_STRING_VARNAME
T_VARIABLE
T_NUM_STRING
T_INLINE_HTML
-T_CHARACTER
-T_BAD_CHARACTER
T_ENCAPSED_AND_WHITESPACE
T_CONSTANT_ENCAPSED_STRING
T_ECHO
diff --git a/ext/tokenizer/tokenizer.c b/ext/tokenizer/tokenizer.c
index dc5f1eba6..c94159e51 100644
--- a/ext/tokenizer/tokenizer.c
+++ b/ext/tokenizer/tokenizer.c
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: tokenizer.c,v 1.31.2.5.2.5 2007/04/08 00:18:38 johannes Exp $ */
+/* $Id: tokenizer.c,v 1.31.2.5.2.6 2007/05/18 13:12:04 dmitry Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -280,14 +280,15 @@ static void tokenize(zval *return_value TSRMLS_DC)
while ((token_type = lex_scan(&token TSRMLS_CC))) {
destroy = 1;
switch (token_type) {
- case EOF:
- zendleng--; /* don't count EOF */
+ case T_CLOSE_TAG:
+ if (zendtext[zendleng - 1] != '>') {
+ CG(zend_lineno)++;
+ }
case T_OPEN_TAG:
case T_OPEN_TAG_WITH_ECHO:
case T_WHITESPACE:
case T_COMMENT:
case T_DOC_COMMENT:
- case T_CLOSE_TAG:
destroy = 0;
break;
}
@@ -297,6 +298,10 @@ static void tokenize(zval *return_value TSRMLS_DC)
array_init(keyword);
add_next_index_long(keyword, token_type);
if (token_type == T_END_HEREDOC) {
+ if (CG(increment_lineno)) {
+ token_line = ++CG(zend_lineno);
+ CG(increment_lineno) = 0;
+ }
add_next_index_stringl(keyword, Z_STRVAL(token), Z_STRLEN(token), 1);
efree(Z_STRVAL(token));
} else {
@@ -372,8 +377,6 @@ get_token_type_name(int token_type)
case T_VARIABLE: return "T_VARIABLE";
case T_NUM_STRING: return "T_NUM_STRING";
case T_INLINE_HTML: return "T_INLINE_HTML";
- case T_CHARACTER: return "T_CHARACTER";
- case T_BAD_CHARACTER: return "T_BAD_CHARACTER";
case T_ENCAPSED_AND_WHITESPACE: return "T_ENCAPSED_AND_WHITESPACE";
case T_CONSTANT_ENCAPSED_STRING: return "T_CONSTANT_ENCAPSED_STRING";
case T_ECHO: return "T_ECHO";