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.
Add TemplateInstance::tnext to construct instantiation dependency graph

To detect speculative instantiations in codegen phase, `tnext` is neccesary for the `test6()` case `runnable/link13350.d`. That's a big difference from the PR #2550.
add __c_long_double
Create builtin for popcnt.

As suggested by @klickverbot popcnt should be a builtin as it is now an intrinsic.
fix Issue 13437 - [e2ir] ICE in e2ir.c 4616
fix Issue 6334 - Template is silently not instantiated
fix Issue 7553 - auto template param triggers mixin conflict
fix Issue 7849 - Manifest constants don't resolve the polysemous literal type
fix Issue 8462 - recursive alias error with function pointer
fix Issue 8724 - Throwing exception in constructor prints strange warning
Merge pull request #3984 from 9rnsr/fix13437

Issue 13437 - [e2ir] ICE in e2ir.c 4616
Merge pull request #3975 from redstar/popcnt

Create builtin for popcnt.
Merge pull request #3948 from 9rnsr/fix_tinst

Add TemplateInstance::tnext to construct instantiation dependency graph
fix Issue 13382 - [e2ir] compare string to int - leads to ICE in e2ir.c 1902
Merge pull request #3981 from WalterBright/c_long_double

add __c_long_double to support Win64 long double
Merge pull request #3729 from klickverbot/fix-7175-test

Fix bogus zero-length array test.
fix Issue 13476 - Writing stubs for dynamically loaded functions no longer works. (circular reference)
need explicit function call for c_long_double
Merge pull request #3982 from 9rnsr/fix13382

Issue 13382 - [e2ir] compare string to int - leads to ICE in e2ir.c 1902
fix Issue 13479 - Templates not emitted when instantiated in mixins mixed in functions

In the PR #3948, I changed the position where `TemplateInstance`s are inserted.

https://github.com/D-Programming-Language/dmd/pull/3948/files#diff-0477a1d81a6a920c99362954179c59c8R5937

But, I didn't notice that glue-layer does not handle `TemplateInstance`s in local members.