编写PHP扩展遇到的 Z_OBJ_P warning问题
PHP中文网
PHP中文网 2017-04-10 14:26:12
[PHP讨论组]

想实现个简单的模板引擎扩展,最近在调试中.但是将扩展编译成so之后却发生了下面的状况:

运行make的时候出现以下warning:

/home/x64-debian-fxy/php5-5.4.4/ext/template_parser/template_parser.c: In function 'zif_template_parser_pause':
/home/x64-debian-fxy/php5-5.4.4/ext/template_parser/template_parser.c:114:21: warning: assignment makes pointer from integer without a cast [enabled by default]

相应代码段如下:

//Fetch real object in order to fetch it's scope.
    if(Z_TYPE_P(object_container) == IS_OBJECT){
        //问题在下行.
        real_object = Z_OBJ_P(object_container);
    } else {
        real_object = NULL;
    }

起初我认为是宏的定义有问题,但是当我将Z_OBJ_P替换成应该使用的zend_object_get_address时,同样的warning会出现. 我在引入头文件时只是将php.h引入. 不知是否有同样经历的前辈解决过这样的问题,望指教!谢谢!

PHP中文网
PHP中文网

认证0级讲师

全部回复(0)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号