diff --git a/src/Parser/Options.h b/src/Parser/Options.h index 67d2ded0..a80c37a3 100644 --- a/src/Parser/Options.h +++ b/src/Parser/Options.h @@ -9,6 +9,13 @@ #include using namespace System::Collections::Generic; +public enum struct CppAbi +{ + Itanium, + Microsoft, + ARM +}; + public ref struct ParserOptions { ParserOptions() @@ -39,7 +46,7 @@ public ref struct ParserOptions bool NoStandardIncludes; bool NoBuiltinIncludes; bool MicrosoftMode; - CppSharp::AST::CppAbi Abi; + CppAbi Abi; bool Verbose; }; diff --git a/src/Parser/Parser.cpp b/src/Parser/Parser.cpp index 4c7bcb78..0a481293 100644 --- a/src/Parser/Parser.cpp +++ b/src/Parser/Parser.cpp @@ -117,7 +117,7 @@ void Parser::SetupHeader() C->setInvocation(Inv); TargetOptions& TO = Inv->getTargetOpts(); - TargetABI = (Opts->Abi == CppSharp::AST::CppAbi::Microsoft) ? TargetCXXABI::Microsoft + TargetABI = (Opts->Abi == CppAbi::Microsoft) ? TargetCXXABI::Microsoft : TargetCXXABI::GenericItanium; TO.CXXABI = GetCXXABIString(TargetABI);