This supports additional syntax of IsExpression.
is ( Type : TypeSpecialization , TemplateParameterList )
is ( Type == TypeSpecialization , TemplateParameterList )
Avoid duplicating code here. Use:
Identifier *tid = id ? id : Lexer::uniqueId("is_id");
TemplateParameter *tp = new TemplateTypeParameter(loc, tid, NULL, NULL);
Good point. Will fix.
Why did this line have to change? You're inserting to parameters above, so dedtypes will have at least 1 element. If it's NULL, the next line below will set it to targ. Am I wrong?
You are right. It had been necessary to avoid access violation during the development of this patch. But now, finally it has been completely unnecessary, and I had just missed it. Will fix.
fix Issue 8959 - IsExpression should support syntax which has no Iden…
…tifier in all cases
Apply code simplification that is pointed out by Andrej Mitrovic
This is a kind of language enhancement.
So assign to @WalterBright and @andralex .
It's a useful enhancement, the fact these were missing has already bugged me several times.
Great, I was missing these. Thanks @9rnsr!