A valid function with no return type?
Meta
jared771 at gmail.com
Thu Sep 24 21:32:20 UTC 2020
On Thursday, 24 September 2020 at 21:26:30 UTC, Max Haughton
wrote:
> https://issues.dlang.org/show_bug.cgi?id=12638
>
> https://run.dlang.io/is/jkEIiI
>
> ref foo() {}
>
> void main()
> {
> import std.traits;
> pragma(msg, ReturnType!foo);
> foo();
> }
>
> Assuming this is supposed to be allowed by the standard,
> replacing void with ref (i.e. ref main { ) does not compile
> which suggests something isn't right.
Anything other than `void main()`, `void main(string[] args)`,
`int main()`, `int main(string[] args)` will cause the compiler
report a compile error. It's probably special-cased in the
compiler somewhere.
More information about the Digitalmars-d
mailing list