Fix bogus zero-length array test.

Issue 7175 was about .ptr always giving null for a zero-length
static array in a struct, despite the fact that the struct has
size 1 and thus certainly a non-null address.

The test case as modified by 36c9b64, however, checks that a
free-standing zero-length static array on the stack has an
address, which is quite a different scenario. From the spec,
I don't see a reason why zero-sized objects should need any
memory associated with them, so I am reluctant to pessimize
LDC's codegen over this.
Fix Issue 3918 - Parameter use before its use in an AndAnd expression with reals treats NaN as false
fix Issue 13403 - [ICE][2.067Alpha] Internal error: backend\type.c 332 with new package protection extension.
[Refactoring] fix indent in IsExp::semantic()
fix Issue 13350 - is(typeof(fun)) causes link error when template fun calls undefined reference

Evaluate the type in IsExp, then unspeculative declared symbols.
Merge pull request #3894 from 9rnsr/fix13350

Issue 13350 - is(typeof(fun)) causes link error when template fun calls undefined reference
Merge pull request #3812 from yebblies/issue3918

Issue 3918 - Parameter use before its use in an AndAnd expression with reals treats NaN as false
[Refactoring] TemplateInstance::semantic()

- Remove a goto jump
- Reduce code indent level
- Use ModToStc in TemplateThisParameter resolution
[Refactoring] Add Module::rootImports() and use it in TemplateInstance::needsCodegen()

it would make compilation a little faster so `rootImports` cache the result.
[Refactoring] Remove the hack code introduced in #1760

AST identity issue has been properly fixed in #3383 (fceb16bbf7).
use checkedint to check overflow
fix Issue 13417 - segmentation fault when deduce template type
Merge pull request #3945 from 9rnsr/refactor_template

[Refactoring] template.c
fix Issue 13424 - Initialization of delegate to do-nothing default causes segfault at runtime
Merge pull request #3950 from 9rnsr/fix13417

[REG2.066] Issue 13417 - segmentation fault when deduce template type
Merge pull request #3951 from 9rnsr/fix13424

[REG2.066] Issue 13424 - Initialization of delegate to do-nothing default causes segfault at runtime
Move error-related stuff into its own file and merge with color
Remove un-convertable comment
Do not use octal literals in dmd
Do not rely on implicit conversion of int to bool