原文gettext国际化包.
Mathias
问题,dmd正在移动具有复制构造器的结构.导致了不能移植core.stdcpp.但是LDC和GDC按期望工作.
d作者认为事情是因为,其中一个复制构造器正在传递右值,导致复制到栈上,而未更新内部指针.
建议进一步简化该示例,以确定问题.
GDC行为是由于附加到非平凡结构内部标志,来避免复制,即该类型结构总是按引用传递和返回.
他一直致力于改进dub以支持更多用例并输出更好的错误消息.
DRuntime和Phobos要用一组特定标志编译.如果编译用户代码时使用的标志与这些标志不匹配,就有问题.
-preview=in预览开关问题,
Walter说,他想到的唯一方法是预览功能不应改变ABI,但可转向仅包含头的库.Martin建议DRuntime和Phobos这样,因为它们是生态系统中拥有的唯一预编译库.如果是dub项目,问题就消失了.
在D中提出定义C++命名空间的两种方法,一种使用标识符,另一种是使用串.前者先出现,后来添加后者来解决前者缺陷.他想弃用标识符选项.
最后,他谈到了如何编译core.stdcpp进DRuntime并且依赖于特定的C++运行时.最初,把它添加进DRuntime的前提是它等同于已存在的C绑定.问题是C绑定不会生成符号,但C++绑定会.导致ABI不匹配.Mathias认为他们应该退出运行时.沃尔特同意了.
伊恩
他一直在为BruceCarneal提供与SIMD相关的一些技术支持.导致一些新的SIMD内置函数.他还把大约600行代码从编译器移到库中.
在上游,他在std.math中加了浮/双精的日志实现.
丹尼斯
在pr中提出减少object.d的大小.分成模块.而object.d只公共导入.
object.d越大,编译速度越慢,分成小文件可能更慢.
大小增加,是从DRuntime转为模板开始.应从object.d中删除它.
私有模块实现.
Max
关注新的CTFE.对Max,newCTFE性能,并不那么重要,因为代码更易于使用且使用内存更少.
Martin说应过多地关注x87.DMD很有趣,因为它仅支持x86.GCC/GDC使用跨平台的软浮点仿真,而LDC使用主机平台的real.
必须决定是要跨所有平台(如GDC使用的)的抽象精度,还是在主机上模拟目标精度.重要的是newCTFE必须可像当前前端一样处理任意real_t类型.Max认为通过重构是可行的.
Iain指出,一旦合并DMD和DRuntime,就不再rebase.










