On Sunday, 23 February 2020 at 11:41:25 UTC, Johan Engelen wrote:
On Sunday, 23 February 2020 at 09:59:45 UTC, drathier wrote:
I'm having some trouble with the order in which `static this()` runs. This is the order defined in the source file, numbered for convenience:

To avoid confusion: you have all `static this()` in a single source file? Or across several source files?

-Johan

They're all in a single source file. The `[template]` prints are inside templates, like this:

```
template none(msg) {
        T!(msg)  none;
        static this() {
none = ((std.functional.toDelegate(&batch!(msg) )))(X!(T!(msg) ));
        }
}
```

The whole reason I have `static this()` is to avoid ctfe crashing from trying to run `toDelegate` at compile time:

```
std/functional.d(1501,22): Error: dummyDel.funcptr cannot be evaluated at compile time
```

Reply via email to