Thread overview | |||||||
---|---|---|---|---|---|---|---|
|
March 19, 2014 Why does the following program write the message 'Foo' twice? | ||||
---|---|---|---|---|
| ||||
Why does the following program write the message 'Foo' twice? void main(string[] args) { pragma(msg, "Foo"); } |
March 19, 2014 Re: Why does the following program write the message 'Foo' twice? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gary Willoughby | On Wednesday, 19 March 2014 at 10:08:50 UTC, Gary Willoughby wrote:
> Why does the following program write the message 'Foo' twice?
>
> void main(string[] args)
> {
> pragma(msg, "Foo");
> }
The message is not printed by the program, but by the compiler.
If you build the program via dmd, the message is only printed once.
If you use rdmd, it will be printed twice, because rdmd invokes dmd once to gather the program's dependencies, and a second time to actually build the program.
|
March 19, 2014 Re: Why does the following program write the message 'Foo' twice? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gary Willoughby | On Wednesday, 19 March 2014 at 10:08:50 UTC, Gary Willoughby
wrote:
> Why does the following program write the message 'Foo' twice?
>
> void main(string[] args)
> {
> pragma(msg, "Foo");
> }
Once upon compilation and once upon run-time. I don't know if it
is intended design but this is how `pragma(msg)` works if put
into function body.
|
March 19, 2014 Re: Why does the following program write the message 'Foo' twice? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Dicebot | Disregard my comment, Vladimir is right :) |
March 19, 2014 Re: Why does the following program write the message 'Foo' twice? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Vladimir Panteleev | On Wednesday, 19 March 2014 at 10:10:18 UTC, Vladimir Panteleev wrote:
> If you use rdmd, it will be printed twice, because rdmd invokes dmd once to gather the program's dependencies, and a second time to actually build the program.
Yes i'm using rdmd. Thanks.
|
Copyright © 1999-2021 by the D Language Foundation