On 08/04/2012 06:23 PM, Jacob Carlborg wrote:
I have a piece of code that looks like this:
https://github.com/jacob-carlborg/dstep/blob/master/clang/Visitor.d#L168
If I change that "first" function to look like this:
@property ParamCursor first ()
{
assert(any, "Cannot get the first parameter of an empty parameter list");
foreach (c ; this)
return c;
assert(0);
}
Then the last assert is hit. The return statement ends the foreach-loop
but it doesn't return from the function. I have not been able to create
a small test case for this.
Have I done a mistake somewhere or is this a bug in DMD?
Mac OS X, DMD 2.059 or 2.060.
int opApply (Delegate dg)
{
auto result = clang_visitChildren(cursor,
&visitorFunction,cast(CXClientData) &dg);
return result == CXChildVisitResult.CXChildVisit_Break ? 1 : 0; //
culprit
}