Skip to content

assert() improvements #1088

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 14 commits into from
Closed

assert() improvements #1088

wants to merge 14 commits into from

Conversation

dstogov
Copy link
Member

@dstogov dstogov commented Feb 16, 2015

krakjoe and others added 5 commits February 2, 2014 12:49
* 'expect' of github.com:krakjoe/php-src:
  import expect

Conflicts:
	Zend/zend_compile.c
	Zend/zend_execute_API.c
	Zend/zend_globals.h
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
	Zend/zend_vm_opcodes.c
	Zend/zend_vm_opcodes.h
	ext/opcache/Optimizer/block_pass.c
	ext/opcache/Optimizer/pass1_5.c
	ext/standard/assert.c
	ext/standard/tests/assert/assert_error3.phpt
* master: (25 commits)
  improve debugability in TS debug builds
  More UPGRADING, in particular on foreach
  Fixed bug #69038 (switch(SOMECONSTANT) misbehaves) for master
  Replace var is introduced
  abstain from using xmlCleanupParser
  fix TS build
  Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
  update news
  Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
  Port for for bug #68552
  Fix bug #68942 (Use after free vulnerability in unserialize() with DateTimeZone)
  Update NEWS
  Fixed bug #69038 (switch(SOMECONSTANT) misbehaves)
  - BFN
  Don't read the local php.ini when Generating Phar When building phar shared, you can end up loading a previous phar.so that isn't compatible with the php cli being used to generate Phar here.
  - Fixed bug #67827 (broken detection of system crypt sha256/sha512 support)
  Delete json outdated package.xml
  made ZEND_TSRMLS_CACHE_* macros look like function calls
  - Fix merge
  - Fixed bug #67427 (SoapServer cannot handle large messages) patch by: brandt at docoloc dot de
  ...
* ====================
* proirity associativity operatiers
* -----------------------------------
* 10 left inclue, include_once, eval, require, require_once

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo... "include"

* master:
  Set PHP_JSON_VERSION to 1.4.0
  Remove unnecessary resource checks in openssl ext
  JSON is now maintained
/*
* Operator Precendence
* ====================
* proirity associativity operatiers
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"operatiers" looks like a typo

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also priority has a typo

@bwoebi
Copy link
Member

bwoebi commented Feb 18, 2015

Could you please add the two new ini settings to the respective default inis?

zend.assertations: -1 for production, 0 for normal and 1 for dev
assert.exception always 1? (The point of assertations is to be immediately caught, no?)

break;
}
} else {
if (c == '"' || c == '`' || c == '$' || c == '\\') {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This needs to distinguish whether the encaps list is in " or ` and only escape that.
E.g. right now the original string "`$a" will be pretty printed as "\`$a", which is different.

case ZEND_AST_CATCH:
smart_str_appends(str, "} catch (");
zend_ast_export_ex(str, ast->child[0], 0, indent);
zend_ast_export_ex(str, ast->child[1], 0, indent);
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should be $ followed by the string in ast->child[1] (or export_var).

* master:
  Implemented AST pretty-printer
  update NEWS to match the actual stuff in 5.6.6
  update NEWS to match the actual stuff in 5.5.22
  update NEWS(add missing entry for the enchant fix, and reorder the entries a bit)
  fix typo in bug#
  update NEWS
  fix email format
  update NEWS
  update 5.6.6 release date in NEWS
  Fix bug #69033 (Request may get env. variables from previous requests if PHP works as FastCGI)
  BFN
  fix test
  fix test
  fix test
  Fixed bug #65593 (Segfault when calling ob_start from output buffering callback)
  Updated NEWS
  add CVE
  5.4.39 next
  Fix associativity to match Perl
  Blast off to space.

Conflicts:
	Zend/zend_ast.c
* master: (59 commits)
  Improved ASSIGN_DIM handler
  Don't inline slow path
  Revert a part committted by mistake
  Fixed compilation warnings
  Fixed a bug that header value is not terminated by '\0' when accessed through getenv().
  better name
  Improve fix for #69038
  Update NEWs
  Fixed bug #69108 ("Segmentation fault" when (de)serializing SplObjectStorage)
  Added specialized versions of DO_FCALL handler:   DO_ICALL - for internal functions   DO_UCALL - for user functions   DO_FCALL_BY_NAME - plain, most probably user, funcstions (not methods)
  Use cache_slot offsets instead of indexes (simplify run-time instructions)
  Split INIT_FCALL_BY_NAME inti INIT_FCALL_BY_NAME(CONST+STRING) and INIT_DYNAMIC_CALL(CONST-STRING|TMPVAR|CV)
  Support list($a, $b) = $a
  Avoid unnecassary check
  Make zend_array_destroy() to free the corresponding zend_array
  Eliminate check on the fast path
  Make current() and key() receive argument by value.
  Use Firebird default home folder, replace Interbase with Firebird
  Updated NEWS
  updated NEWS
  ...

Conflicts:
	Zend/zend_vm_execute.h
	Zend/zend_vm_opcodes.c
	Zend/zend_vm_opcodes.h
* master:
  Fixed C++ support
  Fixed bug #69115 crash in mail
  Reorder
  Update NEWs
  Fixed bug #69121 (Segfault in get_current_user when script owner is not in passwd with ZTS build)
  Update News
  Fixed bug #69125 (Array numeric string as key)
  fix bug#68942's patch
  Fixed ability to build unspecialized executor
  Fixed bug #69124 (method name could not be used when by ref)
  Fixed a bug that header value is not terminated by '\0' when accessed through getenv().
  Fixed a bug that header value is not terminated by '\0' when accessed through getenv().
* master:
  Update NEWS
  Fixed bug #69139 (Crash in gc_zval_possible_root on unserialize)
  windows only test
  Align entries format
  Align entries format for 5.6.7
  Align entries format for 5.5.23
  Bump header year
  Fixed bug #69144 (strtr not replacing with partly matching replace pairs)
  Fixed test?
  Revert mktime()/gmmktime()'s arginfo
  Update NEWS
  Fixed bug #69141 Missing arguments in reflection info for some builtin functions
  Add NEWS entry
  Remove useless date warning
  Fix ARG_INFO for levenshtein
  Fix ARG_INFO for levenshtein
  fix dir separator in tests
  Update NEWS
  Fixed bug #69085 (SoapClient's __call() type confusion through unserialize()).
@nikic
Copy link
Member

nikic commented Mar 6, 2015

Has been merged as 9a20323. The AST pretty printed has been already previously merged as 6b77959.

@nikic nikic closed this Mar 6, 2015
@dstogov dstogov deleted the assert branch October 14, 2019 20:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants