On 04/17/2015 07:05 AM, "Ozan =?UTF-8?B?U8O8ZWwi?= <ozan.su...@gmail.com>" wrote:

>      CTFE: This function is not supported at compile time.
>
> Than trying a call like
>      auto uuid = randomUUID()
>
> results in an error message:
>      /usr/include/dmd/phobos/std/random.d(1138,10): Error: static
> variable seeded cannot be read at compile time

I don't see the issue. Both of those errors indicate the same thing: "not available at compile time." You may have read one of them wrong. (?)

There is no problem with randomUUID() at run time. However, you may be needing an expression at compile time, which in turn needs randomUUID():

import std.uuid;

int foo()
{
    auto uuid = randomUUID();    // <-- Compiles and runs fine
    return 42;
}

void main()
{
    enum e = foo();    // <-- The actual problem
}

Although, the error message I received is not exactly the same  as yours:

  Error: static variable initialized cannot be read at compile time

Ali

Reply via email to