← Back to index
|
Original Bugzilla link
Bug 10626 – ICE with vector operation
Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2013-07-12T18:44:00Z
Last change time
2013-08-29T12:43:51Z
Keywords
ice, pull
Assigned to
yebblies
Creator
nilsbossung
Comments
Comment #0
by nilsbossung — 2013-07-12T18:44:07Z
Fails with v2.064-devel-a0ba3b2. Works with v2.063.2. --- cat > test.d << code void main() { double[2] v; bool b; double[2] result = (b ? 1 : -1) * v[]; } code dmd -c -o- test.d --- dmd: arrayop.c:525: virtual void BinExp::buildArrayIdent(OutBuffer*, Expressions*): Assertion `0' failed. Aborted (core dumped) ---
Comment #1
by nilsbossung — 2013-07-12T19:31:20Z
Looks like the ternary operator is innocent. Another trigger: --- cat > test2.d << code void main() { double[2] v, x; double[2] r = v[] * x[0]; } code dmd -c -o- test2.d --- dmd: arrayop.c:525: virtual void BinExp::buildArrayIdent(OutBuffer*, Expressions*): Assertion `0' failed. Aborted (core dumped) ---
Comment #2
by yebblies — 2013-07-13T07:54:52Z
https://github.com/D-Programming-Language/dmd/pull/2345
Comment #3
by nilsbossung — 2013-07-20T11:03:21Z
*** Issue 10681 has been marked as a duplicate of this issue. ***
Comment #4
by github-bugzilla — 2013-08-28T14:46:09Z
Commits pushed to master at
https://github.com/D-Programming-Language/dmd
https://github.com/D-Programming-Language/dmd/commit/0458fe4dcb7f1beb92903ea8b4f6eb1a0e853430
Fix Issue 10626 - ICE with vector operation Fix regression by forwarding buildArrayIdent and buildArrayLoop to the base implementation for all other derived expressions. Add test cases to improve coverage.
https://github.com/D-Programming-Language/dmd/commit/46e495bc953356efbd48bdea75b3f7d0d779d962
Merge pull request #2345 from yebblies/issue10626 Fix Issue 10626 - ICE with vector operation
Comment #5
by henning — 2013-08-29T12:43:51Z
*** Issue 10918 has been marked as a duplicate of this issue. ***