I can't seem to reproduce this with any other smaller projects, so my question is really what could trigger this behavior.

See: https://i.imgur.com/OmqJ8Sr.png

Whenever I try to just do this kind of thing by itself then it behaves correctly.

Ex: (As you can see it prints the error messages in the order it should.)
https://run.dlang.io/

What I'm doing is basically this:
    static foreach (viewResult; generateViewsResult)
    {
      pragma(msg, "Compiling: " ~ viewResult.name);
      mixin(viewResult.source);
      pragma(msg, "Compiled: " ~ viewResult.name);
    }

I would've expect the compiling to be before the error message, but the compiled after the error message.

However it seems like it doesn't do that, but as I can't reproduce it I'm just wondering what causes it.

I'm suspecting that it's something to do with dub and that it's within a dependency that's compiled as a source library, but I've yet to test it out completely.

It's really impossible to debug mixins when you have no idea which mixin the error actually come from, which is what I'm trying to solve.

Reply via email to