Bug ID | 213 |
---|---|
Summary | Compiler fails when compare two wrapped SIMD vectors (give up with internal error) |
Product | GDC |
Version | development |
Hardware | All |
OS | All |
Status | NEW |
Severity | normal |
Priority | Normal |
Component | gdc |
Assignee | ibuclaw@gdcproject.org |
Reporter | iaktakh@gmail.com |
Compiler fails with internal error when compare two wrapped into struct SIMD vectors No crash with ordinal types like (int) or B{int i;} Note: simd vectors doesn't provide opEquals, you should use v1.array == v2.array Code: import core.simd; struct S { int4 vec; } void main() { S s, b; assert(s == b); } dub test --compiler=gdc gdc-catch-bug ~master: building configuration "application"... source/app.d: In function 'D main': source/app.d:7:6: internal compiler error: in prepare_cmp_insn, at optabs.c:4234 void main() ^ gdc --version gdc (GCC) 5.3.0 OS: ArchLinux, x86_64