From 02f5d0731ae5844b7b531d918231de1ea08e024f Mon Sep 17 00:00:00 2001 From: triton Date: Sun, 18 Aug 2013 19:10:50 +0100 Subject: [PATCH] Classes in AST now keep if they have non trivial copy constructors. --- src/AST/Class.cs | 3 +++ src/Parser/Parser.cpp | 1 + 2 files changed, 4 insertions(+) diff --git a/src/AST/Class.cs b/src/AST/Class.cs index 2a43c236..aa756db2 100644 --- a/src/AST/Class.cs +++ b/src/AST/Class.cs @@ -96,6 +96,9 @@ namespace CppSharp.AST // True if the class is polymorphic. public bool IsPolymorphic; + // True if the class has a non trivial copy constructor. + public bool HasNonTrivialCopyConstructor; + public Class() { Bases = new List(); diff --git a/src/Parser/Parser.cpp b/src/Parser/Parser.cpp index 1e0a9eac..39dc07b6 100644 --- a/src/Parser/Parser.cpp +++ b/src/Parser/Parser.cpp @@ -575,6 +575,7 @@ CppSharp::AST::Class^ Parser::WalkRecordCXX(clang::CXXRecordDecl* Record) RC->IsDependent = Record->isDependentType(); RC->IsDynamic = Record->isDynamicClass(); RC->IsPolymorphic = Record->isPolymorphic(); + RC->HasNonTrivialCopyConstructor = Record->hasNonTrivialCopyConstructor(); auto &Sema = C->getSema(); Sema.ForceDeclarationOfImplicitMembers(Record);