Proposal?
FeepingCreature
feepingcreature at gmail.com
Wed May 30 12:22:28 UTC 2018
On Wednesday, 30 May 2018 at 10:05:42 UTC, H. S. Teoh wrote:
> What about this?
>
> ------
> struct EndOfArgs { }
> EndOfArgs eoa;
>
> void func(string s, EndOfArgs _ = eoa,
> string file = __FILE__, size_t line = __LINE__)
> {
> import std.stdio;
> writefln("%s:%d: msg=%s", file, line, s);
> }
>
> void main() {
> func("hello");
> func("there");
> }
> ------
>
>
> Basically, use a dummy empty struct to differentiate between
> real arguments and context info.
>
>
> T
Thank you, this seems to work well!
We're using struct Fence { } Fence _ = Fence(), and it doesn't
add much overhead.
Barring the proposed compiler change, this seems the cleanest fix.
More information about the Digitalmars-d
mailing list