Fix assertion error with debug build in LLVM 3.5

This is one part of issue #607.
Fix LLVM 3.5 dependency
Fix LLVM 3.5 build
Remove unused member
Fix dmd test template2962 by removing nestedVars.

nestedVars was always a copy of closureVars. There was no point to it
existing.
Merge pull request #618 from ckamm/fix-nestedvars

Fix dmd test template2962 by removing nestedVars.
Make intrinsic parameter errors in CallExp::toElem() fatal.

Returning null will crash just about any other glue layer code.

Ideally, we'd catch those during semantic analysis (glue layer
errors are always to be avoided due to speculative compilation),
but this at least avoids the segfaults.
Reject non-integer atomic load/store during codegen.

This avoids hitting an LLVM assert during codegen.
Fix atomic{Load, Store}() for struct types.

GitHub: Fixes #616.
Merge branch 'master' into merge-2.064

Conflicts:
	gen/nested.cpp
Merge pull request #619 from klickverbot/core-atomic-struct

Fix atomic{Load, Store}() for struct types.
Merge branch 'master' into merge-2.064

Conflicts:
	runtime/druntime
Add alternative llvm-config names.

FreeBSD/PC-BSD has a different naming scheme for multiple LLVM
installations.
Merge branch 'master' into merge-2.064
Re-introduce glue layer closure building error.

This reverts part of b15ffe2ef0dad103aa83d8946e1b4516ae01ec8e,
and fixes 'fail_compilation/fail10666'.
Merge pull request #621 from klickverbot/dtor-closure

Re-introduce glue layer closure building error.
Landingpad clause is now a constant in LLVM 3.5

Just add an explicit cast as this was an implicit requirement before LLVM 3.5, too.
Fix LLVM 3.5 build.

llvm::errc::success was removed during transition to std::errc.
Fix for issue #624
Merge pull request #631 from redstar/issue624

Fix for issue #624