Bug 19234 – betterC TypeInfo error when using slice copy on Structs

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2018-09-08T04:00:51Z
Last change time
2021-06-11T17:17:49Z
Keywords
betterC, pull
Assigned to
No Owner
Creator
SrMordred
See also
https://issues.dlang.org/show_bug.cgi?id=19561

Comments

Comment #0 by patric.dexheimer — 2018-09-08T04:00:51Z
//flags: -betterC -boundscheck=off struct A{} extern(C): void main() { int* x; x[0 .. 0] = x[0 .. 0]; //OK A* a; a[0 .. 0] = a[0 .. 0]; //Error: TypeInfo cannot be used with -betterC }
Comment #1 by n8sh.secondary — 2019-06-01T14:37:37Z
Also applies to slice assign with structs. //flags: -betterC extern(C): struct S { int a; } void main() { S[10] array; S val; array[] = val; }
Comment #2 by n8sh.secondary — 2019-06-01T16:02:55Z
I have a fix for just the slice copy so I'll re-separate the issue of slice assignment.
Comment #3 by dlang-bot — 2019-06-01T16:14:18Z
@n8sh created dlang/dmd pull request #9942 "Fix Issue 19234 - betterC TypeInfo error when using slice copy on Structs" fixing this issue: - Fix Issue 19234 - betterC TypeInfo error when using slice copy on Structs Known limitation: does not work if the struct has a dtor. https://github.com/dlang/dmd/pull/9942
Comment #4 by dlang-bot — 2019-06-02T03:12:00Z
dlang/dmd pull request #9942 "Fix Issue 19234 - betterC TypeInfo error when using slice copy on Structs" was merged into master: - a9080406f3b5c8d29b148be42292d2eb783face1 by Nathan Sashihara: Fix Issue 19234 - betterC TypeInfo error when using slice copy on Structs Known limitation: does not work for struct with postblit or dtor. https://github.com/dlang/dmd/pull/9942
Comment #5 by dlang-bot — 2021-06-08T14:32:12Z
dlang/dmd pull request #12648 "[dmd-cxx] Fix Issue 19234 - betterC TypeInfo error when using slice copy on Structs" was merged into dmd-cxx: - 14d3a7e52f73250d0f152f97f89ed7a43ccf9a90 by Nathan Sashihara: [dmd-cxx] Fix Issue 19234 - betterC TypeInfo error when using slice copy on Structs Known limitation: does not work for struct with postblit or dtor. https://github.com/dlang/dmd/pull/12648
Comment #6 by dlang-bot — 2021-06-09T01:27:32Z
dlang/dmd pull request #12651 "Extend Issue 19234 - betterC TypeInfo error when using slice copy on Structs" was merged into master: - dcdfb21d6691715bc49d775912c1303a46e172bb by Iain Buclaw: Extend Issue 19234 - betterC TypeInfo error when using slice copy on Structs https://github.com/dlang/dmd/pull/12651
Comment #7 by dlang-bot — 2021-06-11T17:17:49Z
dlang/dmd pull request #12668 "[dmd-cxx] Backport recent bug fixes for static foreach ICEs" was merged into dmd-cxx: - d24f3aa8d09ea60375ae40d91ae1cfddcbb19141 by Iain Buclaw: [dmd-cxx] Extend Issue 19234 - betterC TypeInfo error when using slice copy on Structs https://github.com/dlang/dmd/pull/12668