Remove extra semicolons after macro invocation.

Silences some Clang warnings.
Revert meaning of AddExp/MinExp for pointers to DMD default.

It might be worth considering to move the stride multiplication
down to the glue layer in the upstream sources. But assigning a
different meaning to AST nodes was a giant maintenance
liability, especially with regard to CTFE.
Add virtual destructor to EnclosingHandler to silence warnings.
Re-enable SymOffExp and remove associated LLVM-only modifications.
Merge pull request #391 from klickverbot/symoffexp

Re-enable SymOffExp.
Remove CastExp::disableOptimization.
Merge pull request #395 from klickverbot/remove-disableoptimization

Remove CastExp::disableOptimization.
Make irtype.h compile without needing other includes first.
Remove superfluous Expression::toConstElem overrides.

The error message can be printed by the non-overridden
Expression::toConstElem just as well.
Renamed IrStruct to IrAggr, as it is also used for classes.

The class-specific parts should probably be factored out.
Remove leftover declaration.
Remove raw address from log output.

Makes comparing logs harder.
Fix potential latent struct initialization bug.

Apparently the initializer array never was actually
unsorted so far.
Divided ir/irtypestruct.* in general aggregate and struct specific part.

This is just to improve clarity, as it was rather non-obvious
what of the code also applied to classes before.

IrTypeAggr::createInitializerConstant would currently belong in
IrTypeStruct, but this will be refactored anyway.
Refactor struct initializers codegen.

This not only reduces code duplication, but the unification
also enables code a la StructLiteralExp to handle classes
(for CTFE class constant support in 2.063).
Add some no-op virtual destructors to silence GCC warning.