php - 将 php 扩展从 7.2 迁移到 7.3 时编译错误
问题描述
我正在查看现有的 php 扩展,并尝试将其从 7.2 重新定位到 7.3。我需要进行哪些 7.3 api 更改来修复这些构建错误?
我已经查看了内部升级指南,但我仍然不清楚 GC_FLAGS 宏到底发生了什么变化。
https://github.com/php/php-src/blob/php-7.3.0/UPGRADING.INTERNALS
故障线路示例:
GC_FLAGS(common_strings.__construct) |= IS_STR_INTERNED;
(还有更多) https://github.com/tpunt/pht/blob/master/pht.c#L53-L98
返回错误示例:
ext\pht\pht.c(53): error C2106: '|=': left operand must be l-value
(以及更多)https://ci.appveyor.com/project/NxSys/pht/builds/26576298/job/40hva8w8akd3qguw#L231
构建环境:Win10 上的 MSVC15 (Visual Studio 2017)
任何想法\方向将不胜感激。谢谢!
解决方案
您可以尝试使用它(未经测试):
GC_ADD_FLAGS(common_strings.__construct, IS_STR_INTERNED);
当然还有 GC_DEL_FLAGS() 来删除它。
推荐阅读
- java - 求 1 到 N 的平方和?(没有以前的总和)
- c# - unity 固定轴方向
- sql - 在同一个表中的总和值中查找百分比
- java - 如何使用spring AOP切入点表达式截取返回类型List
- angularjs - 父 ng-repeat 中的搜索过滤器不起作用
- python - Cmd 不识别 pip 但 python shell 可以
- asp.net - 为什么具有两个参数的简单方法在 ASP.NET MVC 中不起作用?
- asp.net - ASP .Net MVC 应用程序
- java - 我的服务说它正在运行,但它的状态不清楚——它似乎没有被绑定
- java - Android从字符串包裹中设置图像