fix Issue 9650 - __traits(compiles) + mixin

I couldn't minimize test case, but the bug fix is obvious.

The bug had been hiding for a long time, but recent Phobos change (https://github.com/D-Programming-Language/phobos/commit/2a88fea7867f33fd1cf15c2dca7790a3c8aea474) had exposed the bug.

When a mixin expression gets invalid code string, the parsing error had not handled correctly. In such case, it had generated *invalid* AST instead of returning ErrorExp. I guess that the invalid AST would report weird error in later semantic analysis.

I think that both CompileDeclaration and CompileStatement do not have same problem. So they are not changed.
Merge pull request #1728 from 9rnsr/fix9650

Issue 9650 - __traits(compiles) + mixin