<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/php-git.git/Zend/zend_ptr_stack.h, branch microseconds</title>
<subtitle>git.php.net: repository/php-src.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/php-git.git/'/>
<entry>
<title>bump year which is missed in rev 49493a2</title>
<updated>2016-01-02T09:56:11+00:00</updated>
<author>
<name>Xinchen Hui</name>
<email>laruence@gmail.com</email>
</author>
<published>2016-01-02T09:56:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/php-git.git/commit/?id=97a9470d97599ec7dd7b499e5533e6b15f8f5519'/>
<id>97a9470d97599ec7dd7b499e5533e6b15f8f5519</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>bump year</title>
<updated>2015-01-15T15:27:30+00:00</updated>
<author>
<name>Xinchen Hui</name>
<email>laruence@php.net</email>
</author>
<published>2015-01-15T15:27:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/php-git.git/commit/?id=fc33f52d8c25997dd0711de3e07d0dc260a18c11'/>
<id>fc33f52d8c25997dd0711de3e07d0dc260a18c11</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>trailing whitespace removal</title>
<updated>2015-01-10T23:07:38+00:00</updated>
<author>
<name>Stanislav Malyshev</name>
<email>stas@php.net</email>
</author>
<published>2015-01-03T09:22:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/php-git.git/commit/?id=b7a7b1a624c97945c0aaa49d46ae996fc0bdb6bc'/>
<id>b7a7b1a624c97945c0aaa49d46ae996fc0bdb6bc</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Changed "inline" into "zend_always_inline"</title>
<updated>2014-09-18T00:59:01+00:00</updated>
<author>
<name>Dmitry Stogov</name>
<email>dmitry@zend.com</email>
</author>
<published>2014-09-18T00:59:01+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/php-git.git/commit/?id=5185baab3eaac254da1d81aaaaf4b1428a5a57e3'/>
<id>5185baab3eaac254da1d81aaaaf4b1428a5a57e3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Bump year</title>
<updated>2014-01-03T03:08:10+00:00</updated>
<author>
<name>Xinchen Hui</name>
<email>laruence@php.net</email>
</author>
<published>2014-01-03T03:08:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/php-git.git/commit/?id=c081ce628f0d76d44784d7bb8e06428b06142ac0'/>
<id>c081ce628f0d76d44784d7bb8e06428b06142ac0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Happy New Year</title>
<updated>2013-01-01T08:37:09+00:00</updated>
<author>
<name>Xinchen Hui</name>
<email>laruence@php.net</email>
</author>
<published>2013-01-01T08:37:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/php-git.git/commit/?id=a666285bc2488b7f7362368c388e41428610ad1d'/>
<id>a666285bc2488b7f7362368c388e41428610ad1d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>. The VM stacks for passing function arguments and syntaticaly nested calls were merged into a single stack. The stack size needed for op_array execution is calculated at compile time and preallocated at once. As result all the stack push operatins don't require checks for stack overflow any more.</title>
<updated>2012-11-30T09:39:23+00:00</updated>
<author>
<name>Dmitry Stogov</name>
<email>dmitry@zend.com</email>
</author>
<published>2012-11-30T09:39:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/php-git.git/commit/?id=70f83f35d089d0cafae12ae231a38541f5c8e41c'/>
<id>70f83f35d089d0cafae12ae231a38541f5c8e41c</id>
<content type='text'>
. Generators implementation was improved using the new VM stack. Now it's a bit more clear and faster.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
. Generators implementation was improved using the new VM stack. Now it's a bit more clear and faster.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fixed bug #63132</title>
<updated>2012-09-22T17:15:53+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikic@php.net</email>
</author>
<published>2012-09-22T17:12:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/php-git.git/commit/?id=a31fa55b44bcb342c00e9ab2f4a851d054897a39'/>
<id>a31fa55b44bcb342c00e9ab2f4a851d054897a39</id>
<content type='text'>
EG(arg_types_stack) is now also backed up when generators are used. This
allows the use of yield in nested method calls.

This commit adds two new functions to the zend_ptr_stack API:

    zend_ptr_stack_push_from_memory
    zend_ptr_stack_pop_into_memory

both taking the following arguments:

    zend_ptr_stack *stack, int count, void **pointers
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
EG(arg_types_stack) is now also backed up when generators are used. This
allows the use of yield in nested method calls.

This commit adds two new functions to the zend_ptr_stack API:

    zend_ptr_stack_push_from_memory
    zend_ptr_stack_pop_into_memory

both taking the following arguments:

    zend_ptr_stack *stack, int count, void **pointers
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix lexing of nested heredoc strings in token_get_all()</title>
<updated>2012-03-31T19:53:30+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>nikic@php.net</email>
</author>
<published>2012-03-30T18:41:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/php-git.git/commit/?id=4cf90e06c9834a52195384da760503ea055c726d'/>
<id>4cf90e06c9834a52195384da760503ea055c726d</id>
<content type='text'>
This fixes bug #60097.

Before two global variables CG(heredoc) and CG(heredoc_len) were used to
track the current heredoc label. In order to support nested heredoc
strings the *previous* heredoc label was assigned as the token value of
T_START_HEREDOC and the language_parser.y assigned that to CG(heredoc).

This created a dependency of the lexer on the parser. Thus the
token_get_all() function, which accesses the lexer directly without
also running the parser, was not able to tokenize nested heredoc strings
(and leaked memory). Same applies for the source-code highlighting
functions.

The new approach is to maintain a heredoc_label_stack in the lexer, which
contains all active heredoc labels.

As it is no longer required, T_START_HEREDOC and T_END_HEREDOC now don't
carry a token value anymore.

In order to make the work with zend_ptr_stack in this context more
convenient I added a new function zend_ptr_stack_top(), which retrieves the
top element of the stack (similar to zend_stack_top()).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes bug #60097.

Before two global variables CG(heredoc) and CG(heredoc_len) were used to
track the current heredoc label. In order to support nested heredoc
strings the *previous* heredoc label was assigned as the token value of
T_START_HEREDOC and the language_parser.y assigned that to CG(heredoc).

This created a dependency of the lexer on the parser. Thus the
token_get_all() function, which accesses the lexer directly without
also running the parser, was not able to tokenize nested heredoc strings
(and leaked memory). Same applies for the source-code highlighting
functions.

The new approach is to maintain a heredoc_label_stack in the lexer, which
contains all active heredoc labels.

As it is no longer required, T_START_HEREDOC and T_END_HEREDOC now don't
carry a token value anymore.

In order to make the work with zend_ptr_stack in this context more
convenient I added a new function zend_ptr_stack_top(), which retrieves the
top element of the stack (similar to zend_stack_top()).
</pre>
</div>
</content>
</entry>
<entry>
<title>- Year++</title>
<updated>2012-01-01T13:15:04+00:00</updated>
<author>
<name>Felipe Pena</name>
<email>felipe@php.net</email>
</author>
<published>2012-01-01T13:15:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/php-git.git/commit/?id=8775a37559caa67b2b8d5ede02cde2bac2f974e0'/>
<id>8775a37559caa67b2b8d5ede02cde2bac2f974e0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
