Bug in logger
via Digitalmars-d
digitalmars-d at puremagic.com
Fri Sep 4 13:07:30 PDT 2015
On Friday, 4 September 2015 at 17:46:11 UTC, Prudence wrote:
> On Friday, 4 September 2015 at 01:00:24 UTC, Mike Parker wrote:
>> On Thursday, 3 September 2015 at 23:09:18 UTC, Prudence wrote:
>>> \..\..\src\phobos\std\experimental\logger\core.d(1784):
>>> Error: static variable stdLoggerThreadLogger cannot be read
>>> at compile time
>>>
>>> I'm trying to use the logger in a static this. It should work
>>> or, if it can't, quietly fail(not log anything)... and not
>>> break the program.
>>
>> The error tells you you're trying to use something in a
>> compile-time context that can't be used at compile time. You
>> *should* get errors in that situation. Can you share the
>> offending code?
>
> Wait, that makes no sense... The error is in phobos... not my
> code. THAT specifically means that it is a phobos problem,
> irrespective of what I'm doing.
Is the above the _entire_ error message? For a simple test
program, I get the following:
int sayHello() {
import std.stdio;
writeln("Hello!");
return 42;
}
enum value = sayHello(); // line 7
/home/marc/d/phobos/std/stdio.d(3012): Error: static variable
stdout cannot be read at compile time
/home/marc/d/phobos/std/stdio.d(3076): called from
here: trustedStdout()
xx.d(3): called from here: writeln("Hello!")
xx.d(7): called from here: sayHello()
Notice the lines saying "called from here". They will point you
to the place where the compile-time evaluation is started.
More information about the Digitalmars-d
mailing list