D issues are now tracked on GitHub. This Bugzilla instance remains as a read-only archive.
Issue 6907 - ice(interpret.d) delete expressions crash interpreter
Summary: ice(interpret.d) delete expressions crash interpreter
Status: RESOLVED FIXED
Alias: None
Product: D
Classification: Unclassified
Component: dmd (show other issues)
Version: D2
Hardware: All All
: P2 major
Assignee: No Owner
URL:
Keywords: CTFE, ice, pull
Depends on:
Blocks:
 
Reported: 2011-11-07 23:50 UTC by Don
Modified: 2016-03-19 20:22 UTC (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description Don 2011-11-07 23:50:21 UTC
Although they're not much use, there doesn't seem to be a compelling reason to disallow them. The spec gets shorter if they're allowed.
Comment 1 yebblies 2015-12-10 10:54:41 UTC
The compiler currently crashes, since at least 2.066.

int ice6097a()
{
    scope o = new Object();
    return 1;
}

int ice6097b()
{
    Object o;
    delete o;
    return 1;
}

static assert(ice6097a());
static assert(ice6097b());

At the very least they should not crash.
Comment 3 github-bugzilla 2016-01-31 16:05:30 UTC
Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/bf995651b5a32592081ec1af70218e2a0427f862
fix Issue 6907 - ice(interpret.d) delete expressions crash interpreter

Implement `delete` operation in CTFE.

https://github.com/D-Programming-Language/dmd/commit/18ed97b49f5a4fceb09caf3801869875f1df9f03
Merge pull request #5310 from 9rnsr/fix6907

Issue 6907 - ice(interpret.d) delete expressions crash interpreter
Comment 4 github-bugzilla 2016-03-19 20:22:01 UTC
Commits pushed to stable at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/bf995651b5a32592081ec1af70218e2a0427f862
fix Issue 6907 - ice(interpret.d) delete expressions crash interpreter

https://github.com/D-Programming-Language/dmd/commit/18ed97b49f5a4fceb09caf3801869875f1df9f03
Merge pull request #5310 from 9rnsr/fix6907