diff --git a/.gitignore b/.gitignore index 1ee16de4c76..0a3be5145c8 100644 --- a/.gitignore +++ b/.gitignore @@ -26,7 +26,6 @@ *.tar.xz.asc .FBCIndex .FBCLockFolder -.deps .libs phpt.* core @@ -71,24 +70,16 @@ php_test_results_*.txt php_version.h results.txt shlibtool -stamp-h test.php3 tmp-php.ini -stamp-h.in scan_makefile_in.awk main/php_config.h main/php_config.h.in main/build-defs.h main/internal_functions_cli.c main/config.w32.h -main/stamp-h1 main/streams/build-defs.h -main/streams/stamp-h1 pear/install-pear-nozlib.phar -pear/phpize -pear/run-tests -pear/php-config -pear/scripts sapi/apache2handler/libphp7.module sapi/cgi/php-cgi sapi/cgi/php-cgi.1 diff --git a/.travis.yml b/.travis.yml index bb7619aec11..8a9b0b7e9c6 100644 --- a/.travis.yml +++ b/.travis.yml @@ -69,7 +69,7 @@ before_script: # Run PHPs run-tests.php script: - - ./sapi/cli/php run-tests.php -p `pwd`/sapi/cli/php $(if [ $ENABLE_DEBUG == 0 ]; then echo "-d opcache.enable_cli=1 -d zend_extension=`pwd`/modules/opcache.so"; fi) -g "FAIL,XFAIL,BORK,WARN,LEAK,SKIP" --offline --show-diff --show-slow 1000 --set-timeout 120 + - ./sapi/cli/php run-tests.php -p `pwd`/sapi/cli/php $(if [ $ENABLE_DEBUG == 0 ]; then echo "-d opcache.enable_cli=1 -d opcache.protect_memory=1 -d zend_extension=`pwd`/modules/opcache.so"; fi) -g "FAIL,XFAIL,BORK,WARN,LEAK,SKIP" --offline --show-diff --show-slow 1000 --set-timeout 120 after_success: - ccache --show-stats diff --git a/CODING_STANDARDS b/CODING_STANDARDS index 7e0131e9c83..4af03c6bc71 100644 --- a/CODING_STANDARDS +++ b/CODING_STANDARDS @@ -251,7 +251,7 @@ Testing ------- 1. Extensions should be well tested using *.phpt tests. Read about that - in README.TESTING. + at https://qa.php.net/write-test.php. Documentation and Folding Hooks ------------------------------- diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0b37fa499e9..f71f72a1d10 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -52,9 +52,6 @@ We love getting new tests! PHP is a huge project and improving code coverage is a huge win for every PHP user. [Our QA site includes a page detailing how to write test cases.](http://qa.php.net/write-test.php) -Please note that the section on submitting pull requests is outdated: in -addition to the process listed there, you can also -[submit pull requests](#pull-requests). ## Writing documentation diff --git a/Makefile.global b/Makefile.global index 3a7a18cc3f8..29d74d3acbc 100644 --- a/Makefile.global +++ b/Makefile.global @@ -118,7 +118,7 @@ clean: rm -f libphp$(PHP_MAJOR_VERSION).la $(SAPI_CLI_PATH) $(SAPI_CGI_PATH) $(SAPI_LITESPEED_PATH) $(SAPI_FPM_PATH) $(OVERALL_TARGET) modules/* libs/* distclean: clean - rm -f Makefile config.cache config.log config.status Makefile.objects Makefile.fragments libtool main/php_config.h main/internal_functions_cli.c main/internal_functions.c stamp-h buildmk.stamp Zend/zend_dtrace_gen.h Zend/zend_dtrace_gen.h.bak Zend/zend_config.h TSRM/tsrm_config.h + rm -f Makefile config.cache config.log config.status Makefile.objects Makefile.fragments libtool main/php_config.h main/internal_functions_cli.c main/internal_functions.c buildmk.stamp Zend/zend_dtrace_gen.h Zend/zend_dtrace_gen.h.bak Zend/zend_config.h TSRM/tsrm_config.h rm -f php7.spec main/build-defs.h scripts/phpize rm -f ext/date/lib/timelib_config.h ext/mbstring/oniguruma/config.h ext/mbstring/libmbfl/config.h ext/oci8/oci8_dtrace_gen.h ext/oci8/oci8_dtrace_gen.h.bak rm -f scripts/man1/phpize.1 scripts/php-config scripts/man1/php-config.1 sapi/cli/php.1 sapi/cgi/php-cgi.1 sapi/phpdbg/phpdbg.1 ext/phar/phar.1 ext/phar/phar.phar.1 diff --git a/README.SUBMITTING_PATCH b/README.SUBMITTING_PATCH index be14a97bc3a..72725d689c1 100644 --- a/README.SUBMITTING_PATCH +++ b/README.SUBMITTING_PATCH @@ -138,11 +138,10 @@ work on "master". Read CODING_STANDARDS before you start working. -After modifying the source see README.TESTING and -http://qa.php.net/write-test.php for how to test. Submitting test -scripts helps us to understand what functionality has changed. It is -important for the stability and maintainability of PHP that tests are -comprehensive. +After modifying the source see https://qa.php.net/write-test.php for +how to test. Submitting test scripts helps us to understand what +functionality has changed. It is important for the stability and +maintainability of PHP that tests are comprehensive. After testing is finished, create a patch file using the command: diff --git a/README.TESTING b/README.TESTING deleted file mode 100644 index 45f160f4c2e..00000000000 --- a/README.TESTING +++ /dev/null @@ -1,181 +0,0 @@ -[IMPORTANT NOTICE] ------------------- - Failed tests usually indicate a problem with your local system setup -and not within PHP itself (at least for official PHP release versions). -You may decide to automatically submit a test summary to our QA workflow -at the end of a test run. - Please do *not* submit a failed test as a bug or ask for help on why -it failed on your system without providing substantial backup information -on *why* the test failed on your special setup. Thank you :-) - - -[Testing Basics] ----------------- - The easiest way to test your PHP build is to run "make test" from the -command line after successfully compiling. This will run the complete -tests for all enabled functionalities and extensions using the PHP -CLI binary. - To execute test scripts, you must build PHP with some SAPI, then you -type "make test" to execute all or some test scripts saved under -"tests" directory under source root directory. - -Usage: -make test - - "make test" basically executes "run-tests.php" script -under the source root (parallel builds will not work). Therefore you -can execute the script as follows: - -TEST_PHP_EXECUTABLE=sapi/cli/php \ -sapi/cli/php [-c /path/to/php.ini] run-tests.php [ext/foo/tests/GLOB] - - -[Which "php" executable "make test" look for] ---------------------------------------------- -If you are running the run-tests.php script from the command line (as above) -you must set the TEST_PHP_EXECUTABLE environment variable to explicitly -select the PHP executable that is to be tested, that is, used to run the test scripts. - -If you run the tests using make test, the PHP CLI and CGI executables are -automatically set for you. "make test" executes "run-tests.php" script with the CLI binary. Some -test scripts such as session must be executed by CGI SAPI. Therefore, -you must build PHP with CGI SAPI to perform all tests. - -NOTE: PHP binary executing "run-tests.php" and php binary used for -executing test scripts may differ. If you use different PHP binary for -executing "run-tests.php" script, you may get errors. - - -[Which php.ini is used] ------------------------ - "make test" uses the same php.ini file as it would once installed. -The tests have been written to be independent of that php.ini file, -so if you find a test that is affected by a setting, please report -this, so we can address the issue. - - -[Which test scripts are executed] ---------------------------------- - "run-tests.php" ("make test"), without any arguments executes all -test scripts by extracting all directories named "tests" -from the source root and any subdirectories below. If there are files, -which have a "phpt" extension, "run-tests.php" looks at the sections -in these files, determines whether it should run it, by evaluating -the 'SKIPIF' section. If the test is eligible for execution, the 'FILE' -section is extracted into a ".php" file (with the same name besides -the extension) and gets executed. -When an argument is given or TESTS environment variable is set, the -GLOB is expanded by the shell and any file with extension "*.phpt" is -regarded as a test file. - - Tester can easily execute tests selectively with as follows. - -Examples: -./sapi/cli/php run-tests.php ext/mbstring/* -./sapi/cli/php run-tests.php ext/mbstring/020.phpt - - -[Test results] --------------- - Test results are printed to standard output. If there is a failed test, -the "run-tests.php" script saves the result, the expected result and the -code executed to the test script directory. For example, if -ext/myext/tests/myext.phpt fails to pass, the following files are created: - -ext/myext/tests/myext.php - actual test file executed -ext/myext/tests/myext.log - log of test execution (L) -ext/myext/tests/myext.exp - expected output (E) -ext/myext/tests/myext.out - output from test script (O) -ext/myext/tests/myext.diff - diff of .out and .exp (D) - - Failed tests are always bugs. Either the test is bugged or not considering -factors applying to the tester's environment, or there is a bug in PHP. -If this is a known bug, we strive to provide bug numbers, in either the -test name or the file name. You can check the status of such a bug, by -going to: http://bugs.php.net/12345 where 12345 is the bug number. -For clarity and automated processing, bug numbers are prefixed by a hash -sign '#' in test names and/or test cases are named bug12345.phpt. - -NOTE: The files generated by tests can be selected by setting the -environment variable TEST_PHP_LOG_FORMAT. For each file you want to be -generated use the character in brackets as shown above (default is LEOD). -The php file will be generated always. - -NOTE: You can set environment variable TEST_PHP_DETAILED to enable -detailed test information. - -[Automated Testing] --------------- - If you like to keep up to speed, with latest developments and quality -assurance, setting the environment variable NO_INTERACTION to 1, will not -prompt the tester for any user input. - -Normally, the exit status of "make test" is zero, regardless of the results -of independent tests. Set the environment variable REPORT_EXIT_STATUS to 1, -and "make test" will set the exit status ("$?") to non-zero, when an -individual test has failed. - -Example script to be run by cron(1): -========== qa-test.sh ============= -#!/bin/sh - -CO_DIR=$HOME/cvs/php7 -MYMAIL=qa-test@domain.com -TMPDIR=/var/tmp -TODAY=`date +"%Y%m%d"` - -# Make sure compilation environment is correct -CONFIGURE_OPTS='--disable-all --enable-cli --with-pcre' -export MAKE=gmake -export CC=gcc - -# Set test environment -export NO_INTERACTION=1 -export REPORT_EXIT_STATUS=1 - -cd $CO_DIR -cvs update . >>$TMPDIR/phpqatest.$TODAY -./cvsclean ; ./buildconf ; ./configure $CONFIGURE_OPTS ; $MAKE -$MAKE test >>$TMPDIR/phpqatest.$TODAY 2>&1 -if test $? -gt 0 -then - cat $TMPDIR/phpqatest.$TODAY | mail -s"PHP-QA Test Failed for $TODAY" $MYMAIL -fi -========== end of qa-test.sh ============= - -NOTE: The exit status of run-tests.php will be 1 when -REPORT_EXIT_STATUS is set. The result of "make test" may be higher -than that. At present, gmake 3.79.1 returns 2, so it is -advised to test for non-zero, rather then a specific value. - - -[Creating new test files] -------------------------- - Writing test file is very easy if you are used to PHP. -See the HOWTO at http://qa.php.net/write-test.php - - -[How to help us] ----------------- - If you find bug in PHP, you can submit bug report AND test script -for us. You don't have to write complete script, just give us test -script with following format. Please test the script and make sure -you write the correct ACTUAL OUTPUT and EXPECTED OUTPUT before you -submit. - - diff --git a/README.md b/README.md index 4e59318e5bb..9f34f8a9069 100644 --- a/README.md +++ b/README.md @@ -37,3 +37,10 @@ Guidelines for contributors - [README.GIT-RULES](/README.GIT-RULES) - [README.MAILINGLIST_RULES](/README.MAILINGLIST_RULES) - [README.RELEASE_PROCESS](/README.RELEASE_PROCESS) + +## Testing + +To run tests the `make test` is used after successful compilation of the sources. + +See [Creating new test files](https://qa.php.net/write-test.php) chapter for more +information about testing. diff --git a/UPGRADING.INTERNALS b/UPGRADING.INTERNALS index 8f4046032b7..e2e56c74a30 100644 --- a/UPGRADING.INTERNALS +++ b/UPGRADING.INTERNALS @@ -34,7 +34,7 @@ PHP 7.4 INTERNALS UPGRADE NOTES c. Function/property/class flags changes - ZEND_ACC_CTOR and ZEND_ACC_DTOR are removed. It's possible to check if method is a constructor/destructor using the following condition - (func->commpon.scope->constructor == func). + (func->common.scope->constructor == func). - ZEND_ACC_IMPLEMENTED_ABSTRACT is removed (it was used only internally during inheritance). - ZEND_ACC_IMPLICIT_PUBLIC is removed (it was used only for reflection) diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 39ee2a1063a..93766b98b5d 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -5895,6 +5895,10 @@ void zend_compile_func_decl(znode *result, zend_ast *ast, zend_bool toplevel) /* CG(active_op_array) = op_array; + if (toplevel) { + op_array->fn_flags |= ZEND_ACC_TOP_LEVEL; + } + zend_oparray_context_begin(&orig_oparray_context); if (CG(compiler_options) & ZEND_COMPILE_EXTENDED_INFO) { diff --git a/Zend/zend_compile.h b/Zend/zend_compile.h index 5ce27ba85f1..8d34e0107c6 100644 --- a/Zend/zend_compile.h +++ b/Zend/zend_compile.h @@ -223,6 +223,9 @@ typedef struct _zend_oparray_context { /* Function has typed arguments / class has typed props | | | */ #define ZEND_ACC_HAS_TYPE_HINTS (1 << 8) /* ? | X | | */ /* | | | */ +/* Top-level class or function declaration | | | */ +#define ZEND_ACC_TOP_LEVEL (1 << 9) /* X | X | | */ +/* | | | */ /* Class Flags (unused: 16...) | | | */ /* =========== | | | */ /* | | | */ @@ -240,75 +243,72 @@ typedef struct _zend_oparray_context { /* | | | */ /* Class has magic methods __get/__set/__unset/ | | | */ /* __isset that use guards | | | */ -#define ZEND_ACC_USE_GUARDS (1 << 9) /* X | | | */ +#define ZEND_ACC_USE_GUARDS (1 << 10) /* X | | | */ /* | | | */ /* Class constants updated | | | */ -#define ZEND_ACC_CONSTANTS_UPDATED (1 << 10) /* X | | | */ +#define ZEND_ACC_CONSTANTS_UPDATED (1 << 11) /* X | | | */ /* | | | */ /* Class extends another class | | | */ -#define ZEND_ACC_INHERITED (1 << 11) /* X | | | */ +#define ZEND_ACC_INHERITED (1 << 12) /* X | | | */ /* | | | */ /* Class implements interface(s) | | | */ -#define ZEND_ACC_IMPLEMENT_INTERFACES (1 << 12) /* X | | | */ +#define ZEND_ACC_IMPLEMENT_INTERFACES (1 << 13) /* X | | | */ /* | | | */ /* Class uses trait(s) | | | */ -#define ZEND_ACC_IMPLEMENT_TRAITS (1 << 13) /* X | | | */ +#define ZEND_ACC_IMPLEMENT_TRAITS (1 << 14) /* X | | | */ /* | | | */ /* User class has methods with static variables | | | */ -#define ZEND_HAS_STATIC_IN_METHODS (1 << 14) /* X | | | */ +#define ZEND_HAS_STATIC_IN_METHODS (1 << 15) /* X | | | */ /* | | | */ -/* Top-level class declaration | | | */ -#define ZEND_ACC_TOP_LEVEL (1 << 15) /* X | | | */ -/* | | | */ -/* Function Flags (unused: 25...30) | | | */ +/* Function Flags (unused: 26...30) | | | */ /* ============== | | | */ /* | | | */ /* deprecation flag | | | */ -#define ZEND_ACC_DEPRECATED (1 << 9) /* | X | | */ +#define ZEND_ACC_DEPRECATED (1 << 10) /* | X | | */ /* | | | */ /* Function returning by reference | | | */ -#define ZEND_ACC_RETURN_REFERENCE (1 << 10) /* | X | | */ +#define ZEND_ACC_RETURN_REFERENCE (1 << 11) /* | X | | */ /* | | | */ /* Function has a return type | | | */ -#define ZEND_ACC_HAS_RETURN_TYPE (1 << 11) /* | X | | */ +#define ZEND_ACC_HAS_RETURN_TYPE (1 << 12) /* | X | | */ /* | | | */ /* Function with variable number of arguments | | | */ -#define ZEND_ACC_VARIADIC (1 << 12) /* | X | | */ +#define ZEND_ACC_VARIADIC (1 << 13) /* | X | | */ /* | | | */ /* op_array has finally blocks (user only) | | | */ -#define ZEND_ACC_HAS_FINALLY_BLOCK (1 << 13) /* | X | | */ +#define ZEND_ACC_HAS_FINALLY_BLOCK (1 << 14) /* | X | | */ /* | | | */ /* "main" op_array with | | | */ /* ZEND_DECLARE_INHERITED_CLASS_DELAYED opcodes | | | */ -#define ZEND_ACC_EARLY_BINDING (1 << 14) /* | X | | */ +#define ZEND_ACC_EARLY_BINDING (1 << 15) /* | X | | */ /* | | | */ /* method flag (bc only), any method that has this | | | */ /* flag can be used statically and non statically. | | | */ -#define ZEND_ACC_ALLOW_STATIC (1 << 15) /* | X | | */ +#define ZEND_ACC_ALLOW_STATIC (1 << 16) /* | X | | */ /* | | | */ /* call through user function trampoline. e.g. | | | */ /* __call, __callstatic | | | */ -#define ZEND_ACC_CALL_VIA_TRAMPOLINE (1 << 16) /* | X | | */ +#define ZEND_ACC_CALL_VIA_TRAMPOLINE (1 << 17) /* | X | | */ /* | | | */ /* disable inline caching | | | */ -#define ZEND_ACC_NEVER_CACHE (1 << 17) /* | X | | */ +#define ZEND_ACC_NEVER_CACHE (1 << 18) /* | X | | */ /* | | | */ /* Closure related | | | */ -#define ZEND_ACC_CLOSURE (1 << 18) /* | X | | */ -#define ZEND_ACC_FAKE_CLOSURE (1 << 19) /* | X | | */ +#define ZEND_ACC_CLOSURE (1 << 19) /* | X | | */ +#define ZEND_ACC_FAKE_CLOSURE (1 << 20) /* | X | | */ /* | | | */ /* run_time_cache allocated on heap (user only) | | | */ -#define ZEND_ACC_HEAP_RT_CACHE (1 << 20) /* | X | | */ +#define ZEND_ACC_HEAP_RT_CACHE (1 << 21) /* | X | | */ /* | | | */ /* method flag used by Closure::__invoke() | | | */ -#define ZEND_ACC_USER_ARG_INFO (1 << 21) /* | X | | */ +#define ZEND_ACC_USER_ARG_INFO (1 << 22) /* | X | | */ /* | | | */ -#define ZEND_ACC_GENERATOR (1 << 22) /* | X | | */ +#define ZEND_ACC_GENERATOR (1 << 23) /* | X | | */ /* | | | */ -#define ZEND_ACC_DONE_PASS_TWO (1 << 23) /* | X | | */ +#define ZEND_ACC_DONE_PASS_TWO (1 << 24) /* | X | | */ /* | | | */ /* internal function is allocated at arena (int only) | | | */ -#define ZEND_ACC_ARENA_ALLOCATED (1 << 24) /* | X | | */ +#define ZEND_ACC_ARENA_ALLOCATED (1 << 25) /* | X | | */ /* | | | */ /* op_array uses strict mode types | | | */ #define ZEND_ACC_STRICT_TYPES (1 << 31) /* | X | | */ diff --git a/Zend/zend_inheritance.c b/Zend/zend_inheritance.c index ed5a554fb67..174d8145247 100644 --- a/Zend/zend_inheritance.c +++ b/Zend/zend_inheritance.c @@ -885,12 +885,11 @@ ZEND_API void zend_do_inheritance(zend_class_entry *ce, zend_class_entry *parent dst = end + parent_ce->default_static_members_count; ce->default_static_members_table = end; } - if (CE_STATIC_MEMBERS(parent_ce) == NULL) { - ZEND_ASSERT(parent_ce->type == ZEND_INTERNAL_CLASS || (parent_ce->ce_flags & ZEND_ACC_IMMUTABLE)); - zend_class_init_statics(parent_ce); - } if (UNEXPECTED(parent_ce->type != ce->type)) { /* User class extends internal */ + if (CE_STATIC_MEMBERS(parent_ce) == NULL) { + zend_class_init_statics(parent_ce); + } if (UNEXPECTED(zend_update_class_constants(parent_ce) != SUCCESS)) { ZEND_ASSERT(0); } @@ -905,6 +904,10 @@ ZEND_API void zend_do_inheritance(zend_class_entry *ce, zend_class_entry *parent } } while (dst != end); } else if (ce->type == ZEND_USER_CLASS) { + if (CE_STATIC_MEMBERS(parent_ce) == NULL) { + ZEND_ASSERT(parent_ce->ce_flags & ZEND_ACC_IMMUTABLE); + zend_class_init_statics(parent_ce); + } src = CE_STATIC_MEMBERS(parent_ce) + parent_ce->default_static_members_count; do { dst--; diff --git a/Zend/zend_vm_gen.php b/Zend/zend_vm_gen.php index 6c69737153f..341ed14a0d2 100755 --- a/Zend/zend_vm_gen.php +++ b/Zend/zend_vm_gen.php @@ -2674,6 +2674,7 @@ function gen_vm($def, $skel) { gen_executor($f, $skl, ZEND_VM_SPEC, ZEND_VM_KIND, "execute", "zend_vm_init"); // Generate zend_vm_get_opcode_handler() function + out($f, "\n"); out($f, "static const void* ZEND_FASTCALL zend_vm_get_opcode_handler_ex(uint32_t spec, const zend_op* op)\n"); out($f, "{\n"); if (!ZEND_VM_SPEC) { diff --git a/configure.ac b/configure.ac index 09cb2706bbc..2eda8f440f3 100644 --- a/configure.ac +++ b/configure.ac @@ -1534,7 +1534,6 @@ PHP_GEN_GLOBAL_MAKEFILE AC_DEFINE([HAVE_BUILD_DEFS_H], 1, [ ]) -$php_shtool mkdir -p pear/scripts $php_shtool mkdir -p scripts $php_shtool mkdir -p scripts/man1 diff --git a/ext/exif/tests/exif005.phpt b/ext/exif/tests/exif005.phpt index b472aa826fb..a2282aa1b00 100644 --- a/ext/exif/tests/exif005.phpt +++ b/ext/exif/tests/exif005.phpt @@ -7,9 +7,7 @@ output_handler= zlib.output_compression=0 --FILE-- diff --git a/ext/opcache/tests/blacklist-win32.phpt b/ext/opcache/tests/blacklist-win32.phpt index 7fbe5dbd296..70c87338b50 100644 --- a/ext/opcache/tests/blacklist-win32.phpt +++ b/ext/opcache/tests/blacklist-win32.phpt @@ -23,9 +23,9 @@ print_r(count($status['scripts']) > 0); --EXPECTF-- Array ( - [0] => C:\path\to\foo - [1] => C:\path\to\foo2 - [2] => C:\path\to\bar + [0] => %c:\path\to\foo + [1] => %c:\path\to\foo2 + [2] => %c:\path\to\bar [3] => __DIR__\blacklist.inc [4] => __DIR__\current.php [5] => %scurrent.php diff --git a/ext/opcache/zend_accelerator_util_funcs.c b/ext/opcache/zend_accelerator_util_funcs.c index acec571f4df..ce9f025b991 100644 --- a/ext/opcache/zend_accelerator_util_funcs.c +++ b/ext/opcache/zend_accelerator_util_funcs.c @@ -178,7 +178,9 @@ static void zend_hash_clone_methods(HashTable *ht, HashTable *source, zend_class new_entry->prototype = ARENA_REALLOC(new_entry->prototype); } } - ZEND_MAP_PTR_INIT(new_entry->run_time_cache, ARENA_REALLOC(ZEND_MAP_PTR(new_entry->run_time_cache))); + if (IN_ARENA(ZEND_MAP_PTR(new_entry->run_time_cache))) { + ZEND_MAP_PTR_INIT(new_entry->run_time_cache, ARENA_REALLOC(ZEND_MAP_PTR(new_entry->run_time_cache))); + } ZEND_MAP_PTR_INIT(new_entry->static_variables_ptr, &new_entry->static_variables); } } diff --git a/ext/skeleton/.gitignore.in b/ext/skeleton/.gitignore.in index 912ca92c74a..91bef25220a 100644 --- a/ext/skeleton/.gitignore.in +++ b/ext/skeleton/.gitignore.in @@ -1,4 +1,3 @@ -.deps *.lo *.la .libs diff --git a/ext/sodium/tests/installed.phpt b/ext/sodium/tests/installed.phpt index e548b5f8dcc..e6101ed509d 100644 --- a/ext/sodium/tests/installed.phpt +++ b/ext/sodium/tests/installed.phpt @@ -12,9 +12,6 @@ echo "sodium extension is available"; text in the --EXPECT-- section below for the tests to pass, differences between the output and the expected text are interpreted as failure - - see php7/README.TESTING for further information on - writing regression tests */ ?> --EXPECT-- diff --git a/ext/standard/tests/strings/str_shuffle.phpt b/ext/standard/tests/strings/str_shuffle.phpt index 878cb283dd3..f5122bc2022 100644 --- a/ext/standard/tests/strings/str_shuffle.phpt +++ b/ext/standard/tests/strings/str_shuffle.phpt @@ -2,7 +2,6 @@ Testing str_shuffle. --FILE-- "hi", "hi"=>"hello", "a"=>"A", "world"=>"planet"); var_dump(strtr("# hi all, I said hello world! #", $trans)); ?> diff --git a/ext/tidy/config.w32 b/ext/tidy/config.w32 index 9b20441a1ab..b1768ca1c0f 100644 --- a/ext/tidy/config.w32 +++ b/ext/tidy/config.w32 @@ -17,6 +17,7 @@ if (PHP_TIDY != "no") { EXTENSION("tidy", "tidy.c"); AC_DEFINE('HAVE_TIDY', 1, 'Have TIDY library'); AC_DEFINE('HAVE_TIDY_H', 1, "tidy include header") + AC_DEFINE('HAVE_TIDYOPTGETDOC', 1, "tidy_get_opt_doc function") AC_DEFINE('HAVE_TIDYRELEASEDATE', 1, "tidy release date function") ADD_FLAG('CFLAGS_TIDY', '/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1'); if (!PHP_TIDY_SHARED) { diff --git a/scripts/phpize.in b/scripts/phpize.in index 26ecfc6f650..3e863852f68 100644 --- a/scripts/phpize.in +++ b/scripts/phpize.in @@ -11,7 +11,7 @@ SED="@SED@" FILES_BUILD="mkdep.awk scan_makefile_in.awk shtool libtool.m4 ax_check_compile_flag.m4 ax_gcc_func_attribute.m4 php_cxx_compile_stdcxx.m4" FILES="acinclude.m4 Makefile.global config.sub config.guess ltmain.sh run-tests*.php" -CLEAN_FILES="$FILES *.o *.lo *.la .deps .libs/ build/ modules/ install-sh \ +CLEAN_FILES="$FILES *.o *.lo *.la .libs/ build/ modules/ install-sh \ mkinstalldirs missing config.nice config.sub config.guess configure configure.ac \ aclocal.m4 config.h config.h.in conftest* ltmain.sh libtool config.cache autom4te.cache/ \ config.log config.status Makefile Makefile.fragments Makefile.objects confdefs.h \ diff --git a/scripts/phpize.m4 b/scripts/phpize.m4 index 43cae33c2f1..73743f9739a 100644 --- a/scripts/phpize.m4 +++ b/scripts/phpize.m4 @@ -195,7 +195,6 @@ PHP_GEN_BUILD_DIRS PHP_GEN_GLOBAL_MAKEFILE test -d modules || $php_shtool mkdir modules -touch .deps AC_CONFIG_HEADERS([config.h]) diff --git a/stamp-h.in b/stamp-h.in deleted file mode 100644 index 9788f70238c..00000000000 --- a/stamp-h.in +++ /dev/null @@ -1 +0,0 @@ -timestamp diff --git a/tests/output/bug74815.phpt b/tests/output/bug74815.phpt index be4fa1b2cbd..1d9c8259999 100644 --- a/tests/output/bug74815.phpt +++ b/tests/output/bug74815.phpt @@ -5,10 +5,14 @@ Bug #74815 crash with a combination of INI entries at startup $php = getenv("TEST_PHP_EXECUTABLE"); -echo shell_exec("$php -n -d error_log=errors.log -d error_reporting=E_ALL -d log_errors=On -d track_errors=On -v"); +echo shell_exec("$php -n -d error_log=".__DIR__."/error_log.tmp -d error_reporting=E_ALL -d log_errors=On -d track_errors=On -v"); ?> ==DONE== +--CLEAN-- + --EXPECTF-- Deprecated: Directive 'track_errors' is deprecated in Unknown on line 0 %A