2309d替换模板

原文
本周开始调试旧PR,以将_d_newarray{U,iT,T}转换为两个模板:
1,_d_newarrayT是让编译器降级新 A[n]到的模板.它决定在编译时,如何根据数组元素类型初化数组元素.
2,_d_newarrayU_d_newarrayT调用的泛型实现.要分开此勾挂,因为其他函数(如dup())要调用_d_newarrayU.
因为元素从旧数组复制,因此不需要初化复制数组.
我无法从rt/lifetime.d中删除旧勾挂,因为_d_newarraym{i,}TX仍使用它们.转换_d_newarraym为模板时,在接着几周内,可能会删除旧的_d_newarray*勾挂.

我试更新dup()以使用模板_d_newarrayU,但这导致了一些难以管理的错误,因此PR期望其他更改.我打算在转换_d_newarray{U,iT,T}勾挂为模板后,再处理dup().
目前,(除了FreeBSD似乎全局破坏的测试)后者通过了所有测试,我期待继续_d_newarraym*dup().
谢谢!

你可能感兴趣的:(dlang,d,d)