Issue 6538 - ICE(mangle.c) Invalid template constraints

http://d.puremagic.com/issues/show_bug.cgi?id=6538

From the comment:
> In template constraint, each function parameters, 'this', and 'super' is *pseudo* symbol. If it is passed to other template through alias/tuple parameter, it will cause an error. Because such symbol does not have the actual entity yet.
```d
Example:
 template Sym(alias A) { enum Sym = true; }
 struct S {
   void foo() if (Sym!(this)) {} // Sym!(this) always make an error,
 }                               // because Sym template cannot
 void main() { S s; s.foo(); }   // access to the valid 'this' symbol.
```

---
Requires: https://github.com/D-Programming-Language/dmd/pull/1538