Skip to content

feat(v11): rewrite 80 untyped arginfo to typed return macros (#175)#211

Merged
satwareAG-ironMike merged 1 commit intosatware-mainfrom
feat/175-typed-arginfo
Apr 9, 2026
Merged

feat(v11): rewrite 80 untyped arginfo to typed return macros (#175)#211
satwareAG-ironMike merged 1 commit intosatware-mainfrom
feat/175-typed-arginfo

Conversation

@satwareAG-ironMike
Copy link
Copy Markdown

Migrate all ZEND_BEGIN_ARG_INFO/ZEND_BEGIN_ARG_INFO_EX declarations in firebird.c to typed return macros. 84 lines changed (1:1), zero untyped remaining. Build verified PHP 8.3, stubs sync 89/89.

…cros (#175)

Migrate all ZEND_BEGIN_ARG_INFO/ZEND_BEGIN_ARG_INFO_EX declarations in
firebird.c to ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX or
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX macros.

Return type mapping:
- bool returns: _IS_BOOL via TYPE_INFO_EX
- int returns: IS_LONG via TYPE_INFO_EX
- string returns: IS_STRING via TYPE_INFO_EX
- array|false: MAY_BE_ARRAY|MAY_BE_FALSE via TYPE_MASK_EX
- resource|false: MAY_BE_RESOURCE|MAY_BE_FALSE via TYPE_MASK_EX
- resource|bool: MAY_BE_RESOURCE|MAY_BE_BOOL via TYPE_MASK_EX

Resource-returning functions use MAY_BE_RESOURCE as transitional step;
M3 (resource-to-object migration) will change these to OBJ_TYPE_MASK_EX.

84 lines changed (1:1 replacement), zero untyped arginfo remaining.
Compilation verified on PHP 8.3 with Firebird 4.0 headers.
Stubs sync verified: 89/89 functions covered.
@satwareAG-ironMike satwareAG-ironMike merged commit 5891816 into satware-main Apr 9, 2026
49 checks passed
@satwareAG-ironMike satwareAG-ironMike deleted the feat/175-typed-arginfo branch April 9, 2026 12:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants