Bug 20264 – ICE on illegal cast to vector.

Status
RESOLVED
Resolution
FIXED
Severity
critical
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2019-10-03T12:02:07Z
Last change time
2022-07-02T00:45:54Z
Keywords
pull
Assigned to
No Owner
Creator
Bastiaan Veelo

Comments

Comment #0 by Bastiaan — 2019-10-03T12:02:07Z
void foo(float *a) { import core.simd : float4; cast(float4)(a) = 1.0f; }
Comment #1 by dlang-bot — 2019-11-03T15:31:16Z
@clYd3r created dlang/dmd pull request #10532 "fix issue 20264 - ICE on illegal cast to vector." fixing this issue: - fix issue 20264 - ICE on illegal cast to vector. An assert failed in AssignExpr sema because the VectorExp created for a particular case of cast was not analysed and hence had not type. With the fix, and since the cast was illegal, a valid TypeError is now present. https://github.com/dlang/dmd/pull/10532
Comment #2 by dlang-bot — 2019-11-04T09:10:21Z
dlang/dmd pull request #10532 "fix issue 20264 - ICE on illegal cast to vector." was merged into stable: - db77b6c7ecbc05ae3a054572deeae2631a6f7c9e by Basile Burg: fix issue 20264 - ICE on illegal cast to vector. An assert failed in AssignExpr sema because the VectorExp created for a particular case of cast was not analysed and hence had not type. With the fix, and since the cast was illegal, a valid TypeError is now present. https://github.com/dlang/dmd/pull/10532
Comment #3 by dlang-bot — 2022-07-02T00:45:54Z
dlang/dmd pull request #14264 "[dmd-cxx] fix issue 20264 - ICE on illegal cast to vector." was merged into dmd-cxx: - f46fb6b73ae3e10f2706693a4a51e68e56079c24 by Basile Burg: fix issue 20264 - ICE on illegal cast to vector. https://github.com/dlang/dmd/pull/14264