diff --git a/src/CLI/Generator.cs b/src/CLI/Generator.cs index 25b70a1a..8132bb49 100644 --- a/src/CLI/Generator.cs +++ b/src/CLI/Generator.cs @@ -135,7 +135,6 @@ namespace CppSharp { var parserOptions = driver.ParserOptions; parserOptions.TargetTriple = triple; - parserOptions.Abi = abi; parserOptions.Verbose = options.Verbose; var driverOptions = driver.Options; diff --git a/src/CppParser/Bindings/CLI/CppParser.cpp b/src/CppParser/Bindings/CLI/CppParser.cpp index b40e72af..2a03ea9e 100644 --- a/src/CppParser/Bindings/CLI/CppParser.cpp +++ b/src/CppParser/Bindings/CLI/CppParser.cpp @@ -431,16 +431,6 @@ void CppSharp::Parser::CppParserOptions::CurrentDir::set(System::String^ value) ((::CppSharp::CppParser::CppParserOptions*)NativePtr)->currentDir = clix::marshalString(value); } -CppSharp::Parser::AST::CppAbi CppSharp::Parser::CppParserOptions::Abi::get() -{ - return (CppSharp::Parser::AST::CppAbi)((::CppSharp::CppParser::CppParserOptions*)NativePtr)->abi; -} - -void CppSharp::Parser::CppParserOptions::Abi::set(CppSharp::Parser::AST::CppAbi value) -{ - ((::CppSharp::CppParser::CppParserOptions*)NativePtr)->abi = (::CppSharp::CppParser::AST::CppAbi)value; -} - bool CppSharp::Parser::CppParserOptions::NoStandardIncludes::get() { return ((::CppSharp::CppParser::CppParserOptions*)NativePtr)->noStandardIncludes; diff --git a/src/CppParser/Bindings/CLI/CppParser.h b/src/CppParser/Bindings/CLI/CppParser.h index f8e829c4..1031941b 100644 --- a/src/CppParser/Bindings/CLI/CppParser.h +++ b/src/CppParser/Bindings/CLI/CppParser.h @@ -24,7 +24,6 @@ namespace CppSharp ref class ParserTargetInfo; namespace AST { - enum struct CppAbi; ref class ASTContext; ref class NativeLibrary; } @@ -157,12 +156,6 @@ namespace CppSharp void set(System::String^); } - property CppSharp::Parser::AST::CppAbi Abi - { - CppSharp::Parser::AST::CppAbi get(); - void set(CppSharp::Parser::AST::CppAbi); - } - property bool NoStandardIncludes { bool get(); diff --git a/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs index 89957a8c..0184e3cb 100644 --- a/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs +++ b/src/CppParser/Bindings/CSharp/i686-apple-darwin12.4.0/CppSharp.CppParser.cs @@ -47028,7 +47028,7 @@ namespace CppSharp public unsafe partial class CppParserOptions : IDisposable { - [StructLayout(LayoutKind.Explicit, Size = 152)] + [StructLayout(LayoutKind.Explicit, Size = 148)] public partial struct __Internal { [FieldOffset(0)] @@ -47071,30 +47071,27 @@ namespace CppSharp internal global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C currentDir; [FieldOffset(140)] - internal global::CppSharp.Parser.AST.CppAbi abi; - - [FieldOffset(144)] internal byte noStandardIncludes; - [FieldOffset(145)] + [FieldOffset(141)] internal byte noBuiltinIncludes; - [FieldOffset(146)] + [FieldOffset(142)] internal byte microsoftMode; - [FieldOffset(147)] + [FieldOffset(143)] internal byte verbose; - [FieldOffset(148)] + [FieldOffset(144)] internal byte unityBuild; - [FieldOffset(149)] + [FieldOffset(145)] internal byte skipPrivateDeclarations; - [FieldOffset(150)] + [FieldOffset(146)] internal byte skipLayoutInfo; - [FieldOffset(151)] + [FieldOffset(147)] internal byte skipFunctionBodies; [SuppressUnmanagedCodeSecurity] @@ -47556,19 +47553,6 @@ namespace CppSharp } } - public global::CppSharp.Parser.AST.CppAbi Abi - { - get - { - return ((global::CppSharp.Parser.CppParserOptions.__Internal*) __Instance)->abi; - } - - set - { - ((global::CppSharp.Parser.CppParserOptions.__Internal*)__Instance)->abi = value; - } - } - public bool NoStandardIncludes { get diff --git a/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs index 1720c563..a6aea874 100644 --- a/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs +++ b/src/CppParser/Bindings/CSharp/i686-pc-win32-msvc/CppSharp.CppParser.cs @@ -47028,7 +47028,7 @@ namespace CppSharp public unsafe partial class CppParserOptions : IDisposable { - [StructLayout(LayoutKind.Explicit, Size = 188)] + [StructLayout(LayoutKind.Explicit, Size = 184)] public partial struct __Internal { [FieldOffset(0)] @@ -47071,30 +47071,27 @@ namespace CppSharp internal global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C currentDir; [FieldOffset(176)] - internal global::CppSharp.Parser.AST.CppAbi abi; - - [FieldOffset(180)] internal byte noStandardIncludes; - [FieldOffset(181)] + [FieldOffset(177)] internal byte noBuiltinIncludes; - [FieldOffset(182)] + [FieldOffset(178)] internal byte microsoftMode; - [FieldOffset(183)] + [FieldOffset(179)] internal byte verbose; - [FieldOffset(184)] + [FieldOffset(180)] internal byte unityBuild; - [FieldOffset(185)] + [FieldOffset(181)] internal byte skipPrivateDeclarations; - [FieldOffset(186)] + [FieldOffset(182)] internal byte skipLayoutInfo; - [FieldOffset(187)] + [FieldOffset(183)] internal byte skipFunctionBodies; [SuppressUnmanagedCodeSecurity] @@ -47556,19 +47553,6 @@ namespace CppSharp } } - public global::CppSharp.Parser.AST.CppAbi Abi - { - get - { - return ((global::CppSharp.Parser.CppParserOptions.__Internal*) __Instance)->abi; - } - - set - { - ((global::CppSharp.Parser.CppParserOptions.__Internal*)__Instance)->abi = value; - } - } - public bool NoStandardIncludes { get diff --git a/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs index 6573dad7..91900f3b 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs +++ b/src/CppParser/Bindings/CSharp/x86_64-apple-darwin12.4.0/CppSharp.CppParser.cs @@ -47027,7 +47027,7 @@ namespace CppSharp public unsafe partial class CppParserOptions : IDisposable { - [StructLayout(LayoutKind.Explicit, Size = 296)] + [StructLayout(LayoutKind.Explicit, Size = 288)] public partial struct __Internal { [FieldOffset(0)] @@ -47070,30 +47070,27 @@ namespace CppSharp internal global::Std.BasicString.__Internalc__N_std_N___1_S_basic_string__C___N_std_N___1_S_char_traits__C___N_std_N___1_S_allocator__C currentDir; [FieldOffset(280)] - internal global::CppSharp.Parser.AST.CppAbi abi; - - [FieldOffset(284)] internal byte noStandardIncludes; - [FieldOffset(285)] + [FieldOffset(281)] internal byte noBuiltinIncludes; - [FieldOffset(286)] + [FieldOffset(282)] internal byte microsoftMode; - [FieldOffset(287)] + [FieldOffset(283)] internal byte verbose; - [FieldOffset(288)] + [FieldOffset(284)] internal byte unityBuild; - [FieldOffset(289)] + [FieldOffset(285)] internal byte skipPrivateDeclarations; - [FieldOffset(290)] + [FieldOffset(286)] internal byte skipLayoutInfo; - [FieldOffset(291)] + [FieldOffset(287)] internal byte skipFunctionBodies; [SuppressUnmanagedCodeSecurity] @@ -47555,19 +47552,6 @@ namespace CppSharp } } - public global::CppSharp.Parser.AST.CppAbi Abi - { - get - { - return ((global::CppSharp.Parser.CppParserOptions.__Internal*) __Instance)->abi; - } - - set - { - ((global::CppSharp.Parser.CppParserOptions.__Internal*)__Instance)->abi = value; - } - } - public bool NoStandardIncludes { get diff --git a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs index 8db63b82..fa43c3ba 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs +++ b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu-cxx11abi/CppSharp.CppParser.cs @@ -47027,7 +47027,7 @@ namespace CppSharp public unsafe partial class CppParserOptions : IDisposable { - [StructLayout(LayoutKind.Explicit, Size = 320)] + [StructLayout(LayoutKind.Explicit, Size = 312)] public partial struct __Internal { [FieldOffset(0)] @@ -47070,30 +47070,27 @@ namespace CppSharp internal global::Std.BasicString.__Internalc__N_std_N___cxx11_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C currentDir; [FieldOffset(304)] - internal global::CppSharp.Parser.AST.CppAbi abi; - - [FieldOffset(308)] internal byte noStandardIncludes; - [FieldOffset(309)] + [FieldOffset(305)] internal byte noBuiltinIncludes; - [FieldOffset(310)] + [FieldOffset(306)] internal byte microsoftMode; - [FieldOffset(311)] + [FieldOffset(307)] internal byte verbose; - [FieldOffset(312)] + [FieldOffset(308)] internal byte unityBuild; - [FieldOffset(313)] + [FieldOffset(309)] internal byte skipPrivateDeclarations; - [FieldOffset(314)] + [FieldOffset(310)] internal byte skipLayoutInfo; - [FieldOffset(315)] + [FieldOffset(311)] internal byte skipFunctionBodies; [SuppressUnmanagedCodeSecurity] @@ -47555,19 +47552,6 @@ namespace CppSharp } } - public global::CppSharp.Parser.AST.CppAbi Abi - { - get - { - return ((global::CppSharp.Parser.CppParserOptions.__Internal*) __Instance)->abi; - } - - set - { - ((global::CppSharp.Parser.CppParserOptions.__Internal*)__Instance)->abi = value; - } - } - public bool NoStandardIncludes { get diff --git a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs index 459e2c74..859ac7c7 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs +++ b/src/CppParser/Bindings/CSharp/x86_64-linux-gnu/CppSharp.CppParser.cs @@ -47027,7 +47027,7 @@ namespace CppSharp public unsafe partial class CppParserOptions : IDisposable { - [StructLayout(LayoutKind.Explicit, Size = 248)] + [StructLayout(LayoutKind.Explicit, Size = 240)] public partial struct __Internal { [FieldOffset(0)] @@ -47070,30 +47070,27 @@ namespace CppSharp internal global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C currentDir; [FieldOffset(232)] - internal global::CppSharp.Parser.AST.CppAbi abi; - - [FieldOffset(236)] internal byte noStandardIncludes; - [FieldOffset(237)] + [FieldOffset(233)] internal byte noBuiltinIncludes; - [FieldOffset(238)] + [FieldOffset(234)] internal byte microsoftMode; - [FieldOffset(239)] + [FieldOffset(235)] internal byte verbose; - [FieldOffset(240)] + [FieldOffset(236)] internal byte unityBuild; - [FieldOffset(241)] + [FieldOffset(237)] internal byte skipPrivateDeclarations; - [FieldOffset(242)] + [FieldOffset(238)] internal byte skipLayoutInfo; - [FieldOffset(243)] + [FieldOffset(239)] internal byte skipFunctionBodies; [SuppressUnmanagedCodeSecurity] @@ -47555,19 +47552,6 @@ namespace CppSharp } } - public global::CppSharp.Parser.AST.CppAbi Abi - { - get - { - return ((global::CppSharp.Parser.CppParserOptions.__Internal*) __Instance)->abi; - } - - set - { - ((global::CppSharp.Parser.CppParserOptions.__Internal*)__Instance)->abi = value; - } - } - public bool NoStandardIncludes { get diff --git a/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs b/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs index bad5c2ae..781e047a 100644 --- a/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs +++ b/src/CppParser/Bindings/CSharp/x86_64-pc-win32-msvc/CppSharp.CppParser.cs @@ -47028,7 +47028,7 @@ namespace CppSharp public unsafe partial class CppParserOptions : IDisposable { - [StructLayout(LayoutKind.Explicit, Size = 320)] + [StructLayout(LayoutKind.Explicit, Size = 312)] public partial struct __Internal { [FieldOffset(0)] @@ -47071,30 +47071,27 @@ namespace CppSharp internal global::Std.BasicString.__Internalc__N_std_S_basic_string__C___N_std_S_char_traits__C___N_std_S_allocator__C currentDir; [FieldOffset(304)] - internal global::CppSharp.Parser.AST.CppAbi abi; - - [FieldOffset(308)] internal byte noStandardIncludes; - [FieldOffset(309)] + [FieldOffset(305)] internal byte noBuiltinIncludes; - [FieldOffset(310)] + [FieldOffset(306)] internal byte microsoftMode; - [FieldOffset(311)] + [FieldOffset(307)] internal byte verbose; - [FieldOffset(312)] + [FieldOffset(308)] internal byte unityBuild; - [FieldOffset(313)] + [FieldOffset(309)] internal byte skipPrivateDeclarations; - [FieldOffset(314)] + [FieldOffset(310)] internal byte skipLayoutInfo; - [FieldOffset(315)] + [FieldOffset(311)] internal byte skipFunctionBodies; [SuppressUnmanagedCodeSecurity] @@ -47556,19 +47553,6 @@ namespace CppSharp } } - public global::CppSharp.Parser.AST.CppAbi Abi - { - get - { - return ((global::CppSharp.Parser.CppParserOptions.__Internal*) __Instance)->abi; - } - - set - { - ((global::CppSharp.Parser.CppParserOptions.__Internal*)__Instance)->abi = value; - } - } - public bool NoStandardIncludes { get diff --git a/src/CppParser/CppParser.cpp b/src/CppParser/CppParser.cpp index d191bfee..bbdbb6ae 100644 --- a/src/CppParser/CppParser.cpp +++ b/src/CppParser/CppParser.cpp @@ -13,7 +13,6 @@ namespace CppSharp { namespace CppParser { CppParserOptions::CppParserOptions() : ASTContext(0) , toolSetToUse(0) - , abi(CppAbi::Itanium) , noStandardIncludes(false) , noBuiltinIncludes(false) , microsoftMode(false) diff --git a/src/CppParser/CppParser.h b/src/CppParser/CppParser.h index 472180af..9fc84e35 100644 --- a/src/CppParser/CppParser.h +++ b/src/CppParser/CppParser.h @@ -38,7 +38,6 @@ struct CS_API CppParserOptions int toolSetToUse; std::string targetTriple; std::string currentDir; - CppAbi abi; bool noStandardIncludes; bool noBuiltinIncludes; diff --git a/src/CppParser/Parser.cpp b/src/CppParser/Parser.cpp index 33b4f557..2c540a4e 100644 --- a/src/CppParser/Parser.cpp +++ b/src/CppParser/Parser.cpp @@ -281,7 +281,6 @@ void Parser::Setup() c->getLangOpts() = *Inv->LangOpts; auto& TO = Inv->TargetOpts; - targetABI = ConvertToClangTargetCXXABI(opts->abi); if (opts->targetTriple.empty()) opts->targetTriple = llvm::sys::getDefaultTargetTriple(); @@ -421,6 +420,7 @@ std::string Parser::GetDeclMangledName(const clang::Decl* D) std::unique_ptr MC; auto& AST = c->getASTContext(); + auto targetABI = c->getTarget().getCXXABI().getKind(); switch(targetABI) { default: @@ -714,6 +714,7 @@ void Parser::WalkVTable(const clang::CXXRecordDecl* RD, Class* C) if (!C->layout) C->layout = new ClassLayout(); + auto targetABI = c->getTarget().getCXXABI().getKind(); C->layout->ABI = GetClassLayoutAbi(targetABI); auto& AST = c->getASTContext(); @@ -973,6 +974,7 @@ void Parser::WalkRecord(const clang::RecordDecl* Record, Class* RC) const auto& Layout = c->getASTContext().getASTRecordLayout(Record); if (!RC->layout) RC->layout = new ClassLayout(); + auto targetABI = c->getTarget().getCXXABI().getKind(); RC->layout->ABI = GetClassLayoutAbi(targetABI); RC->layout->alignment = (int)Layout.getAlignment().getQuantity(); RC->layout->size = (int)Layout.getSize().getQuantity(); diff --git a/src/CppParser/Parser.h b/src/CppParser/Parser.h index 5cea9984..720ffacf 100644 --- a/src/CppParser/Parser.h +++ b/src/CppParser/Parser.h @@ -168,7 +168,6 @@ private: int index; std::unique_ptr c; - clang::TargetCXXABI::Kind targetABI; llvm::LLVMContext LLVMCtx; std::unique_ptr LLVMModule; std::unique_ptr CGM; diff --git a/src/CppParser/ParserGen/ParserGen.cs b/src/CppParser/ParserGen/ParserGen.cs index 6ced171e..7b5298ec 100644 --- a/src/CppParser/ParserGen/ParserGen.cs +++ b/src/CppParser/ParserGen/ParserGen.cs @@ -17,15 +17,13 @@ namespace CppSharp { internal readonly GeneratorKind Kind; internal readonly string Triple; - internal readonly CppAbi Abi; internal readonly bool IsGnuCpp11Abi; - public ParserGen(GeneratorKind kind, string triple, CppAbi abi, + public ParserGen(GeneratorKind kind, string triple, bool isGnuCpp11Abi = false) { Kind = kind; Triple = triple; - Abi = abi; IsGnuCpp11Abi = isGnuCpp11Abi; } @@ -51,7 +49,6 @@ namespace CppSharp { var parserOptions = driver.ParserOptions; parserOptions.TargetTriple = Triple; - parserOptions.Abi = Abi; var options = driver.Options; options.GeneratorKind = Kind; @@ -65,7 +62,7 @@ namespace CppSharp }); parserModule.OutputNamespace = string.Empty; - if (Abi == CppAbi.Microsoft) + if (parserOptions.IsMicrosoftAbi) parserOptions.MicrosoftMode = true; if (Triple.Contains("apple")) @@ -168,18 +165,15 @@ namespace CppSharp if (Platform.IsWindows) { Console.WriteLine("Generating the C++/CLI parser bindings for Windows..."); - ConsoleDriver.Run(new ParserGen(GeneratorKind.CLI, "i686-pc-win32-msvc", - CppAbi.Microsoft)); + ConsoleDriver.Run(new ParserGen(GeneratorKind.CLI, "i686-pc-win32-msvc")); Console.WriteLine(); Console.WriteLine("Generating the C# parser bindings for Windows..."); - ConsoleDriver.Run(new ParserGen(GeneratorKind.CSharp, "i686-pc-win32-msvc", - CppAbi.Microsoft)); + ConsoleDriver.Run(new ParserGen(GeneratorKind.CSharp, "i686-pc-win32-msvc")); Console.WriteLine(); Console.WriteLine("Generating the C# 64-bit parser bindings for Windows..."); - ConsoleDriver.Run(new ParserGen(GeneratorKind.CSharp, "x86_64-pc-win32-msvc", - CppAbi.Microsoft)); + ConsoleDriver.Run(new ParserGen(GeneratorKind.CSharp, "x86_64-pc-win32-msvc")); Console.WriteLine(); } @@ -187,13 +181,11 @@ namespace CppSharp if (Directory.Exists(osxHeadersPath) || Platform.IsMacOS) { Console.WriteLine("Generating the C# parser bindings for OSX..."); - ConsoleDriver.Run(new ParserGen(GeneratorKind.CSharp, "i686-apple-darwin12.4.0", - CppAbi.Itanium)); + ConsoleDriver.Run(new ParserGen(GeneratorKind.CSharp, "i686-apple-darwin12.4.0")); Console.WriteLine(); Console.WriteLine("Generating the C# parser bindings for OSX..."); - ConsoleDriver.Run(new ParserGen(GeneratorKind.CSharp, "x86_64-apple-darwin12.4.0", - CppAbi.Itanium)); + ConsoleDriver.Run(new ParserGen(GeneratorKind.CSharp, "x86_64-apple-darwin12.4.0")); Console.WriteLine(); } @@ -201,13 +193,12 @@ namespace CppSharp if (Directory.Exists(linuxHeadersPath) || Platform.IsLinux) { Console.WriteLine("Generating the C# parser bindings for Linux..."); - ConsoleDriver.Run(new ParserGen(GeneratorKind.CSharp, "x86_64-linux-gnu", - CppAbi.Itanium)); + ConsoleDriver.Run(new ParserGen(GeneratorKind.CSharp, "x86_64-linux-gnu")); Console.WriteLine(); Console.WriteLine("Generating the C# parser bindings for Linux (GCC C++11 ABI)..."); ConsoleDriver.Run(new ParserGen(GeneratorKind.CSharp, "x86_64-linux-gnu", - CppAbi.Itanium, isGnuCpp11Abi: true)); + isGnuCpp11Abi: true)); Console.WriteLine(); } } diff --git a/src/Parser/ParserOptions.cs b/src/Parser/ParserOptions.cs index bb770165..3ad46540 100644 --- a/src/Parser/ParserOptions.cs +++ b/src/Parser/ParserOptions.cs @@ -59,14 +59,12 @@ namespace CppSharp.Parser { public ParserOptions() { - Abi = Platform.IsUnixPlatform ? CppAbi.Itanium : CppAbi.Microsoft; MicrosoftMode = !Platform.IsUnixPlatform; CurrentDir = Assembly.GetExecutingAssembly().Location; } public ParserOptions(ParserOptions options) { - Abi = options.Abi; ToolSetToUse = options.ToolSetToUse; TargetTriple = options.TargetTriple; NoStandardIncludes = options.NoStandardIncludes; @@ -82,8 +80,9 @@ namespace CppSharp.Parser ForceClangToolchainLookup = options.ForceClangToolchainLookup; } - public bool IsItaniumLikeAbi => Abi != CppAbi.Microsoft; - public bool IsMicrosoftAbi => Abi == CppAbi.Microsoft; + public bool IsItaniumLikeAbi => !IsMicrosoftAbi; + public bool IsMicrosoftAbi => TargetTriple.Contains("win32") || + TargetTriple.Contains("windows") || TargetTriple.Contains("msvc"); public bool EnableRTTI { get; set; } public LanguageVersion? LanguageVersion { get; set; } @@ -201,7 +200,6 @@ namespace CppSharp.Parser public void SetupMSVC(VisualStudioVersion vsVersion) { MicrosoftMode = true; - Abi = CppAbi.Microsoft; var clVersion = MSVCToolchain.GetCLVersion(vsVersion); ToolSetToUse = clVersion.Major * 10000000 + clVersion.Minor * 100000; @@ -284,7 +282,6 @@ namespace CppSharp.Parser MicrosoftMode = false; NoBuiltinIncludes = true; NoStandardIncludes = true; - Abi = CppAbi.Itanium; string compiler, longVersion, shortVersion; GetUnixCompilerInfo(headersPath, out compiler, out longVersion, out shortVersion);