diff options
Diffstat (limited to 'cpp/src/slice2cpp/Gen.cpp')
-rw-r--r-- | cpp/src/slice2cpp/Gen.cpp | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/cpp/src/slice2cpp/Gen.cpp b/cpp/src/slice2cpp/Gen.cpp index bd0a3b15b29..150ebdd11b5 100644 --- a/cpp/src/slice2cpp/Gen.cpp +++ b/cpp/src/slice2cpp/Gen.cpp @@ -464,11 +464,11 @@ writeDocSummary(Output& out, const ContainedPtr& p) case Contained::ContainedTypeStruct: case Contained::ContainedTypeException: { - UnitPtr unit = p->container()->unit(); + UnitPtr unt = p->container()->unit(); string file = p->file(); assert(!file.empty()); static const string prefix = "cpp:doxygen:include:"; - DefinitionContextPtr dc = unit->findDefinitionContext(file); + DefinitionContextPtr dc = unt->findDefinitionContext(file); assert(dc); string q = dc->findMetaData(prefix); if(!q.empty()) @@ -5150,6 +5150,14 @@ Slice::Gen::AsyncImplVisitor::visitOperation(const OperationPtr& p) } } + H.zeroIndent(); + H << sp; + H << nl << "#if defined(_MSC_VER) && (_MSC_VER >= 1900)"; + H << nl << "# pragma warning(push)"; + H << nl << "# pragma warning(disable:4239)"; + H << nl << "#endif"; + H.restoreIndent(); + H << sp << nl << "class " << _dllExport << classNameAMD << '_' << name << " : public " << classScopedAMD << '_' << name << ", public ::IceInternal::IncomingAsync"; H << sb; @@ -5164,6 +5172,13 @@ Slice::Gen::AsyncImplVisitor::visitOperation(const OperationPtr& p) H << nl << "virtual void ice_response(" << params << ");"; H << eb << ';'; + H.zeroIndent(); + H << sp; + H << nl << "#if defined(_MSC_VER) && (_MSC_VER >= 1900)"; + H << nl << "# pragma warning(pop)"; + H << nl << "#endif"; + H.restoreIndent(); + C << sp; C << nl << "/// \\cond INTERNAL"; C << nl << "IceAsync" << classScopedAMD << '_' << name << "::" << classNameAMD << '_' << name |