[Mobies-commit] [commit] r4362 - UDM/trunk/src/Udm
ksmyth at redhat3.isis.vanderbilt.edu
ksmyth at redhat3.isis.vanderbilt.edu
Fri Nov 6 08:41:34 CST 2015
Author: ksmyth
Date: Fri Nov 6 08:41:34 2015
New Revision: 4362
Log:
Udm.exe: need to generate copy assignment
Modified:
UDM/trunk/src/Udm/ClassGen.cpp
UDM/trunk/src/Udm/UdmCpp.cpp
Modified: UDM/trunk/src/Udm/ClassGen.cpp
==============================================================================
--- UDM/trunk/src/Udm/ClassGen.cpp Fri Nov 6 08:41:29 2015 (r4361)
+++ UDM/trunk/src/Udm/ClassGen.cpp Fri Nov 6 08:41:34 2015 (r4362)
@@ -149,6 +149,13 @@
// C& C::operator=(C &&a) { ::Udm::Object::operator =(std::move(a)); return *this; }
meth_rvalue_defs.push_back( boost::format("%1%& %1%::operator=(%1% &&a) { ::Udm::Object::operator =(std::move(a)); return *this; }") % cl_name );
+ // "A implicitly-declared copy assignment operator for class T is defined as deleted if any of the following is true:
+ // ... T has a user-declared move assignment operator"
+ // C& operator=(const C &a)
+ meth_rvalue_decls.push_back(boost::format("%1%& operator=(const %1% &a)") % cl_name);
+ // C& C::operator=(const C &a) { ::Udm::Object::operator =(std::move(a)); return *this; }
+ meth_rvalue_defs.push_back(boost::format("%1%& %1%::operator=(const %1% &a) { ::Udm::Object::operator =(a); return *this; }") % cl_name);
+
// static C Cast(const ::Udm::Object &a)
meth_decls.push_back( boost::format("static %1% Cast(const ::Udm::Object &a)") % cl_name );
// static C C::Cast(const ::Udm::Object &a) { return __Cast(a, meta); }
Modified: UDM/trunk/src/Udm/UdmCpp.cpp
==============================================================================
--- UDM/trunk/src/Udm/UdmCpp.cpp Fri Nov 6 08:41:29 2015 (r4361)
+++ UDM/trunk/src/Udm/UdmCpp.cpp Fri Nov 6 08:41:34 2015 (r4362)
@@ -307,7 +307,8 @@
vector<boost::format> r;
- r.push_back( boost::format("#ifndef %1%\n\
+ r.push_back( boost::format("#pragma once\n\
+#ifndef %1%\n\
#define %1%\n\
\n\
// header file %2%.h generated from diagram %3%\n\
More information about the Mobies-commit
mailing list