Forward referencing functions in D
wilcro
wmcr at mail.com
Fri Oct 16 19:55:53 UTC 2020
The web page "Programming in D for C Programmers"
(https://dlang.org/articles/ctod.html#forwardfunc) states that
forward declarations are neither required nor permitted, and that
the following construct is allowable:
void myfunc()
{
forwardfunc();
}
void forwardfunc()
{
... //do stuff
}
However, the following code will cause a compiler error:
import std.stdio: writeln;
void main()
{
void myfunc() {
forwardfunc(); // onlineapp.d(8): Error: undefined
identifier forwardfunc
}
void forwardfunc() {
writeln("foo");
}
myfunc();
}
Evidently, I am misunderstanding something very elemental here;
thanks for any enlightenment regarding this.
More information about the Digitalmars-d-learn
mailing list