Clean up code in inifile.c
Fixup funcAttributes.
Merge pull request #3354 from yebblies/inifile

[cleanup] Untangle the rat's nest in inifile.c
fix Issue 12688 - Strange error if function call is in parentheses

`(s.foo).writeln` is parsed as `DotIdExp(TypeExp('s.foo'), 'writeln')`, but the type `s.foo` should be analyzed as dotvar expression.
fix Issue 12673 - ICE with static assert and __traits(compiles) with non-existent symbol
Merge pull request #3525 from 9rnsr/fix12673

Issue 12673 - ICE with static assert and __traits(compiles) with non-existent symbol
Add license to visitor header
Merge pull request #3523 from ibuclaw/visitorlicense

Add license to visitor header
Merge pull request #3524 from 9rnsr/fix12688

Issue 12688 - Strange error if function call is in parentheses
Add BlitExp
fix Issue 12686 - Struct invariant prevents NRVO
fix Issue 12703 - final class rejects members initialization
Merge pull request #3528 from 9rnsr/fix12703

[REG2.065] Issue 12703 - final class rejects members initialization
Merge pull request #3506 from AndrejMitrovic/FixupFuncAttrib

Fixup funcAttributes.
Merge pull request #3527 from 9rnsr/fix12686

Issue 12686 - Struct invariant prevents NRVO
[Refactoring] Small cleanup for Expression::checkPurity
Remove code for bug 7107 and 10296 because they are unnecessary anymore.

Now instantiated symbols can reach correct "parent" via `Dsymbol::toParent2()`, because `TemplateInstance::enclosing` is properly calculated in `TemplateInstance::hasNestedArgs`.
fix Issue 12704 - typeof function literal incorrectly infers attributes
Merge pull request #3530 from 9rnsr/fix12704

Issue 12704 - typeof function literal incorrectly infers attributes
Add posix.mak itself as dep