D issues are now tracked on GitHub. This Bugzilla instance remains as a read-only archive.
Issue 8066 - ICE on missing return statement if invariant is present
Summary: ICE on missing return statement if invariant is present
Status: RESOLVED FIXED
Alias: None
Product: D
Classification: Unclassified
Component: dmd (show other issues)
Version: D2
Hardware: All All
: P2 normal
Assignee: No Owner
URL:
Keywords: ice, pull
Depends on:
Blocks:
 
Reported: 2012-05-08 05:08 UTC by Trass3r
Modified: 2012-05-10 17:13 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description Trass3r 2012-05-08 05:08:16 UTC
struct CLCommandQueue
{
	invariant() {}

//private:
	int enqueueNativeKernel()
	{
		assert(0, "implement me");
	}
}

$ dmd -c commandqueue.d
dmd: func.c:1557: virtual void FuncDeclaration::semantic3(Scope *): Assertion `vresult' failed.

Works without the invariant or with the private.

Might have to do with the fix for http://d.puremagic.com/issues/show_bug.cgi?id=5039, but that's just a guess.
Comment 2 github-bugzilla 2012-05-10 12:53:48 UTC
Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/ad9e8e6ded41180b01ae8ff4460ce066a78cad93
fix Issue 8066 - ICE on missing return statement if invariant is present

https://github.com/D-Programming-Language/dmd/commit/fefeed478ab3a201afe2536c8a4734df92228187
Merge pull request #934 from 9rnsr/fix8066

Issue 8066 - ICE on missing return statement if invariant is present