On 12/18/18 7:21 AM, berni wrote:
Is there a way to check if a function is indeed executed at compile time or not? (Other than going through the whole executable binaries...)

I tried

static this()
{
  if (__ctfe) pragma(msg,"works");
  // some other stuff
}

but unfortunatley this "if" is also executed at compile time, when I put it into a function that is only called at runtime. When I try "static if" instead the compiler complains about "__ctfe" being not known at compile time.

Well, asserting would at least tell you that it's used.

if(__ctfe) assert(0, "Yep, CTFE used");

But obviously, it couldn't be there for release purposes :)

-Steve

Reply via email to