Browse Source

Added an option for the used ABI to the C++ Parser class.

Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
pull/27/head
Dimitar Dobrev 12 years ago
parent
commit
90db6eb95d
  1. 3
      src/Generator/Parser.cs
  2. 2
      src/Parser/Parser.cpp
  3. 1
      src/Parser/Parser.h

3
src/Generator/Parser.cs

@ -52,7 +52,8 @@ namespace CppSharp @@ -52,7 +52,8 @@ namespace CppSharp
NoBuiltinIncludes = options.NoBuiltinIncludes,
MicrosoftMode = options.MicrosoftMode,
ToolSetToUse = options.ToolsetToUse,
TargetTriple = options.TargetTriple
TargetTriple = options.TargetTriple,
Abi = options.Abi
};
var result = ClangParser.ParseHeader(parserOptions);

2
src/Parser/Parser.cpp

@ -114,7 +114,7 @@ void Parser::SetupHeader() @@ -114,7 +114,7 @@ void Parser::SetupHeader()
C->setInvocation(Inv);
TargetOptions& TO = Inv->getTargetOpts();
TargetABI = Opts->MicrosoftMode ? TargetCXXABI::Microsoft
TargetABI = (Opts->Abi == CppSharp::AST::CppAbi::Microsoft) ? TargetCXXABI::Microsoft
: TargetCXXABI::GenericItanium;
TO.CXXABI = GetCXXABIString(TargetABI);

1
src/Parser/Parser.h

@ -66,6 +66,7 @@ public ref struct ParserOptions @@ -66,6 +66,7 @@ public ref struct ParserOptions
bool NoStandardIncludes;
bool NoBuiltinIncludes;
bool MicrosoftMode;
CppSharp::AST::CppAbi Abi;
bool Verbose;
};

Loading…
Cancel
Save