From c0c7a8dba06c2dc0fddb6d1e9e56f3eab0fb8271 Mon Sep 17 00:00:00 2001 From: Olly Betts Date: Wed, 8 Dec 2021 13:06:16 +1300 Subject: [php] Fix two incorrect PHP 8 conditionals The correct macro to test is PHP_MAJOR_VERSION so these two PHP 8 cases weren't ever used, which hid that the PHP8 version of the code was broken in one of them. Highlighted in #2113. --- Lib/exception.i | 8 ++++---- Lib/php/phpinterfaces.i | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Lib/exception.i b/Lib/exception.i index 7508b409b..5cdea58e8 100644 --- a/Lib/exception.i +++ b/Lib/exception.i @@ -14,14 +14,14 @@ #ifdef SWIGPHP %{ -#if PHP_MAJOR >= 8 -# define SWIG_HANDLE_VALUE_ERROR_FOR_PHP8 code == SWIG_ValueError ? zend_ce_value_error : +#if PHP_MAJOR_VERSION >= 8 +# define SWIG_HANDLE_VALUE_ERROR_FOR_PHP8(code) code == SWIG_ValueError ? zend_ce_value_error : #else -# define SWIG_HANDLE_VALUE_ERROR_FOR_PHP8 +# define SWIG_HANDLE_VALUE_ERROR_FOR_PHP8(code) #endif #define SWIG_exception(code, msg) do { zend_throw_exception( \ code == SWIG_TypeError ? zend_ce_type_error : \ - SWIG_HANDLE_VALUE_ERROR_FOR_PHP8 \ + SWIG_HANDLE_VALUE_ERROR_FOR_PHP8(code) \ code == SWIG_DivisionByZero ? zend_ce_division_by_zero_error : \ code == SWIG_SyntaxError ? zend_ce_parse_error : \ code == SWIG_OverflowError ? zend_ce_arithmetic_error : \ diff --git a/Lib/php/phpinterfaces.i b/Lib/php/phpinterfaces.i index dda219d91..5b1da8b79 100644 --- a/Lib/php/phpinterfaces.i +++ b/Lib/php/phpinterfaces.i @@ -54,7 +54,7 @@ #define SWIG_PHP_INTERFACE_JsonSerializable_HEADER "ext/json/php_json.h" // New in PHP 8.0. -#if PHP_MAJOR >= 8 +#if PHP_MAJOR_VERSION >= 8 # define SWIG_PHP_INTERFACE_Stringable_CE zend_ce_stringable # define SWIG_PHP_INTERFACE_Stringable_HEADER "zend_interfaces.h" #endif -- cgit v1.2.1