Forward declaration inside Function block, no error?
where at is.this
Sun Jan 6 20:19:59 UTC 2019
On Sunday, 6 January 2019 at 18:38:44 UTC, Benjamin Thaut wrote:
> Today I found a bug in my D code.
> import std.stdio;
> // Type your code here, or load an example.
> void grow()
> void someFunc(bool condition)
> void grow();
> I tried to call the grow function, but accidentially copied the
> return value alongside the function name. I was wondering why
> this code compiles without errors. the "void grow();" becomes a
> no-op. In my opinion this could should not compile. Am I
> missing something here?
> Kind Regards
> Benjamin Thaut
void someFunc(bool condition)
pragma(msg, grow.mangleof); // _D3app8someFuncFbZ4growMFZv
You can declare functions inside of functions in D. You weren't
forward declare grow() in the module namespace, so much as you
were forward declaring a new function grow.
More information about the Digitalmars-d-learn