On Monday, 11 November 2013 at 13:16:23 UTC, Jacob Carlborg wrote:
I just don't want to add a bunch of pragmas. I don't know what's the best solution.

I am only suggesting one :)
We only need one that'll output any text we want it to and make the compiler consider it an error. On the macro side of things we can build a string which then can be given to the pragma.

All of the wrapping giving the goodness would go into the context.

Current what I have enables this:

void main() {
        U u;
}

alias T!("hi", "bye") U;

struct T(string a, string b) {
        pragma(error, a ~ "\n" ~ b);
}

test.d(8): Error: hi
bye

test.d(5): Error: template instance test.T!("hi", "bye") error instantiating

Not really in pull state but thats the best I can do. Really that final error should be omitted.

Reply via email to