Bug 11655 – assignment of struct with vector field

Status
RESOLVED
Resolution
WORKSFORME
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2013-11-30T11:20:29Z
Last change time
2020-03-21T03:56:41Z
Keywords
ice
Assigned to
No Owner
Creator
Martin Nowak

Comments

Comment #0 by code — 2013-11-30T11:20:29Z
cat > bug.d << CODE struct Foo { __vector(float[4]) x; } void bug() { Foo y; y = Foo([0, 0, 0, 0]); // OK y = Foo(); // NG } CODE dmd -c bug ---- tym = x1d Internal error: backend/cgxmm.c 547 ---- The function xmmload is called with TYnptr.
Comment #1 by john.loughran.colvin — 2014-12-19T09:59:15Z
Both of these now compile, but they segfault at runtime. I'm pretty sure it's because of an unaligned access when reading the initialiser.