mirror of
https://github.com/dlang/dmd.git
synced 2025-04-26 21:21:48 +03:00

* druntime: Copy array allocation functions to `core.internal.array.utils` This copies `__setArrayAllocLength()`, `__arrayAlloc()` and moves `__arrayStart()` and `__arrayClearPad()` to `core.internal.array.utils.d`. This is needed because `_d_newarrayT()` calls these functions from `rt.lifetime.d`, but the file cannot be imported from `core.internal.array.creation.d`. Signed-off-by: Teodor Dutu <teodor.dutu@gmail.com> * Translate `_d_newarray{U,iT,T}` to a single template This achieves the following: - Convert `_d_newarray{U,iT,T}` to a single template `_d_newarrayT` that handles arrays of elements that either have an init symbol or are zero-initialised. - Move compiler lowering to the semantic phase - Store lowered expression in `NewExp.lowering` Signed-off-by: Teodor Dutu <teodor.dutu@gmail.com> --------- Signed-off-by: Teodor Dutu <teodor.dutu@gmail.com>
12 lines
411 B
D
12 lines
411 B
D
// REQUIRED_ARGS: -c
|
|
// EXTRA_FILES: imports/foo10727b.d imports/stdtraits10727.d
|
|
/*
|
|
TEST_OUTPUT:
|
|
---
|
|
fail_compilation/imports/foo10727b.d(25): Error: undefined identifier `Frop`
|
|
fail_compilation/imports/foo10727b.d(17): Error: template instance `foo10727b.CirBuff!(Foo)` error instantiating
|
|
fail_compilation/imports/foo10727b.d(22): instantiated from here: `Bar!(Foo)`
|
|
---
|
|
*/
|
|
|
|
import imports.foo10727b;
|