fix Issue 9112 - Uniform construction for built-in types

Support syntax T(), T(v), and new T(v) for basic type T
Use defaultInitLiteral

It is more direct conversion than using typeDotExp(loc, t, Id::init).
And for scalar types, there is no difference. So this will just shorten
compilation pathway.
Added small parser fix
Disable optimization and inlining in debug DMD builds
Merge pull request #3362 from CyberShadow/msc-debug-config

Disable optimization and inlining in VS debug DMD builds
Merge pull request #1356 from 9rnsr/uniform_ctor

Issue 9112 - Uniform construction for built-in types