Renamed HiddenStructureReturn to IndirectReturnType as it is a lot more clear.
Fixed GetFunctionNativeIdentifier to work with function operators.
Added FunctionSynthKind property to function to keep what kind of synthesis occurred.
Added original function property to keep the original function where this one was synthetized from.
When generating the internal name for a function, take into account its original function.
Reworked MoveOperatorToClassPass to be simpler and correct.
Run CleanInvalidDeclNamesPass earlier because some later passes need the names to be cleaned up.
Cleaned up operator overload helpers.
Run CheckOperatorsOverloadsPass under both backends.
Reworked operator overloading support.
Reworked the CheckAbiParameters pass to be a lot more accurate by re-using the previously added support for indirect type information.
Make the parsing of function codegen info a bit more robust.
Revert "Remove VS2010 support."

This reverts commit d48fdf654d148613b6a9f84301cad3872c869310.

Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
Generated compilable wrappers for functions taking char*.

Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
Fixed the wrapping of functions taking a function pointer.

Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>