fix VS build:
- remove root\array.c from projects
- #include <alloca.h> for alloca()
- define strtold and strtof
move #include <alloca.h> into port.h
move #define strtof into port.h
CTFE: Typo in typecheck for casts of AddrExp pointers

Was checking the pointer type instead of the pointee type.
Exposed by Test75 in interpret3.d in test suite, when using CTFE to do
const folding.
CTFE: &global -> SymOffExp

optimize() changes AddrExp(globalvar) into a SymOffExp.
But optimize() isn't always called before CTFE, so do it here too.
Fix bug 10273: ICE(ctfeexpr.c): using CTFE after error in struct init
Merge pull request #2133 from donc/ctfe_internal_fixes

Two more CTFE internal fixes relating to pointers
Merge pull request #2134 from donc/ctfe10273_icestructinit

Fix bug 10273: ICE(ctfeexpr.c): using CTFE after error in struct init
Merge pull request #2102 from rainers/fix_vsbuild5

fix VS build
Fix bug 10283 ICE(interpret.c): passing struct with failed initializer to CTFE

If a struct literal contains an error field, it's an error.
Remove last case of optimize(WANTinterpret)
Merge pull request #2144 from donc/ice10283ctfestructlit

10283: ICE in CTFE
[trivial] Remove stray comment.
[trivial] Fix name in comment rule.
Merge pull request #2147 from klickverbot/trivial-fixes

Trivial comment fixes