forked from php/php-src
-
Notifications
You must be signed in to change notification settings - Fork 0
[pull] master from php:master #414
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
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
We also add zend_map_ptr_static, so that we do not incur the overhead of constantly recreating the internal run_time_cache pointers on each request. This mechanism might be extended for mutable_data of internal classes too.
M4 macros would mean macros for M4 language like m4_normalize() and similar. Macros defined with AC_DEFUN are better called simply Auotoconf macros. [skip ci]
Unlike the `userland_declaration_error_const.phpt` test, the point of this test is to demonstrate using a class constant as the default parameter. See also the corresponding internal_declaration_* tests. [skip ci]
Constants are declared with `=` not `:`
The ext_srcdir variable is at time of writing set only after calling the PHP_NEW_EXTENSION. Other extensions also use @ext_srcdir@ template placeholder for these cases. This fixes wrongly set include flag even though build also works without libgd include flag.
This patch simplifies line endings tracked in the Git repository and syncs them to the LF style instead of the CRLF. Newline characters: - LF (\n) (*nix and Mac) - CRLF (\r\n) (Windows) - CR (\r) (old Mac, obsolete) To see which line endings are in the index and in the working copy the following command can be used: `git ls-files --eol` Git also provides `.gitattributes` file to specify files that need specific line endings in the working directory on all platforms (either CRLF or LF): ``` file-with-crlf text eol=crlf ``` Changed files shouldn't cause issues on modern Windows platforms because also Git can do output conversion if core.autocrlf=true is set on Windows and use CRLF newlines in all files in the working tree. Unless CRLF files are tracked specifically, Git by default tracks all files in the index using LF newlines.
- AS_* macros used - Arguments quoted - Cache variable ac_cv_pread renamed to php_cv_func_pread - Cache variables ac_cv_pwrite renamed to php_cv_func_pwrite
The scale is default-initialized to 0, so we can simplify the code a bit.
* Fix typo * Implement conditional message * Use suggested code with ternary * Wrap ternary Co-authored-by: Peter Kokot <peterkokot@gmail.com> --------- Co-authored-by: Peter Kokot <peterkokot@gmail.com>
This is a sync with upstream already fixed in early 2024 which fixes 64-bit builds on 32-bit hosts. PHP's bundled config.guess sets the host_alias, for example, on Solaris systems to 64-bit if the compiler supports it even though the architecture is actually 32-bit. These assembly files resolve this situation in a build-system-agnostic way by including the architecture file that is supported by the compiler.
This enables adding multiple include paths. For example: PHP_ADD_INCLUDE([ $abs_srcdir $abs_builddir $abs_srcdir/main $abs_builddir/main ], [1]) The 2nd argument "prepend" is now validated at Autoconf compile time instead of the configure time.
Also, redundant PHP_MBREGEX check is removed and wrapped in a single "if" check.
…header colon HTTP/1.1 does not require a single whitespace after the colon, and SoapServer does implement HTTP/1.1. The header value is already correctly whitespace-trimmed, so no behaviour change happens w.r.t. header values. Closes GH-15793.
A common convention is to name internal C header files as `*_int.h`. Since a couple of these are actually installed, we add comments that this is not supposed to happen, (a) to avoid installing further internal headers, and (b) to pave the way to fix this in the next major PHP version. Somewhat special is php_gmp_int.h, where "int" is meant as abbreviation for "interface". Another common convention is appending `_priv` or `_private`, but since there have not been any issues regarding these headers so far, we refrain from adding respective comments to these headers. Anyhow, it might be a good idea to introduce some common naming convention for such internal/private headers.
First we refactor to have only a single usage of `PHP_GAI_STRERROR()` left; then we drop the macro in favor of calling the different functions conditionally in an ad-hoc style. This is necessary because the return value of `php_win32_error_to_msg` needs to be freed by the caller. The error messages are no more inline with other error messages, since `gai_strerror()` apparently always appends a period and a space. We also properly configure IPv4/v6 on Windows. Since WSPiApi.h has been created in 2000, so we can safely assume that it is available everywhere nowadays. Furthermore, `gai_strerror()` is available regardless of whether there is IPv6 support.
…15476) The apxs -q HTTPD_VERSION variable is available since Apache 2.4.17. This change obsoletes the PHP_AP_EXTRACT_VERSION macro and checks the version in the config.m4 file directly. Version is checked against the dotted format instead of the version number.
- The libgd sanity check is there only to check whether all current linked libraries for the bundled libgd work together, otherwise it is probably even redundant a bit; this refactors it to a simpler AC_LINK_IFELSE check with default empty C program by Autoconf - The IBM DB2 sanity check is simplified with AC_CHECK_FUNC instead
…F_HAVE (#15802) The PHP_BUILD_THREAD_SAFE macro is a simple wrapper around setting the enable_zts variable and can't be used in PHP extensions realistically. The PHP_TEST_BUILD macro might produce warnings on certain compiler configurations and default AC_* macros like AC_LINK_IFELSE, AC_CHECK_LIB, or AC_CHECK_FUNC are better suited for such checks. Also, a quick browse through the open-source PHP extensions doesn't find usages of this macro except in imap extension where patch is was already sent: php/pecl-mail-imap#11 PHP_DEF_HAVE is a wrapper around AC_DEFINE and using AC_DEFINE_UNQUOTED and AS_TR_CPP are better suited for this task where also help text can be passed. Usages in the open source PHP extensions have been checked and patches sent where found.
* PHP-8.2: Fix uninitialized lineno in constant AST of internal enums
* PHP-8.3: Fix uninitialized lineno in constant AST of internal enums
* Improve trace SSA construction and type inference * Fix incorrect abstract stack maintenance * Add missing register store * Avoid IR binding for the dangerous case * Fix access to possibly uninitilezed variable * Improve trace SSA construction and type inference * Fix IR constuction Force load values into regesters before any branches to guarantee SSA dominance property
* PHP-8.2: Fix OPcache tests under specific conditions
* PHP-8.3: Fix OPcache tests under specific conditions
* PHP-8.2: Fix OPcache tests under specific conditions
* PHP-8.3: Fix OPcache tests under specific conditions
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot]
Can you help keep this open source service alive? 💖 Please sponsor : )