Fix Issue 7472 - Cast from class to basic type not rejected during semantic
Merge pull request #2886 from yebblies/issue7472

Issue 7472 - Cast from class to basic type not rejected during semantic
Consider `decl == NULL` case
[trivial] tweak code style
[Refactoring] Reduce use of variable 'a'
[Refactoring] Tweak token consumers

parseImport should return parsed `Import`s.
Add test for ddoc unittest feature (1)
Add test for ddoc unittest feature (2)
fix Issue 11677 - user defined attributes must be first

Parse prefix attributes in while loop of parseDeclDefs
fix Issue 11678 - user defined attributes cannot appear as postfixes
fix Issue 11679 - user defined attributes not allowed for local auto declarations
fix Issue 11680 - user defined attributes for type inference