diff options
author | Bernard Normier <bernard@zeroc.com> | 2005-08-03 18:00:48 +0000 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2005-08-03 18:00:48 +0000 |
commit | 19532993c26115b91889f6cefe83354a799a7a22 (patch) | |
tree | 2f6b87a3ad4d7062cf723eaaba1d3f9c1e4c0cce /cpp/src/slice2cppe/Gen.cpp | |
parent | use unique names for test suite proxy properties. (diff) | |
download | ice-19532993c26115b91889f6cefe83354a799a7a22.tar.bz2 ice-19532993c26115b91889f6cefe83354a799a7a22.tar.xz ice-19532993c26115b91889f6cefe83354a799a7a22.zip |
Added work-around for another instance of the ARM/eVC4 exception bug
Diffstat (limited to 'cpp/src/slice2cppe/Gen.cpp')
-rw-r--r-- | cpp/src/slice2cppe/Gen.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/cpp/src/slice2cppe/Gen.cpp b/cpp/src/slice2cppe/Gen.cpp index 94156af12a4..0818310a8e7 100644 --- a/cpp/src/slice2cppe/Gen.cpp +++ b/cpp/src/slice2cppe/Gen.cpp @@ -1322,6 +1322,18 @@ Slice::Gen::ProxyVisitor::visitOperation(const OperationPtr& p) C << sb; C << nl << "__handleException(__ex, __cnt);"; C << eb; + + C.zeroIndent(); + C << nl << "#if defined(_MSC_VER) && (_MSC_VER == 1201) && defined(_M_ARM) // EVC4 SP4 bug."; // COMPILERBUG + C.restoreIndent(); + C << nl << "catch(...)"; + C << sb; + C << nl << "throw;"; + C << eb; + C.zeroIndent(); + C << nl << "#endif"; + C.restoreIndent(); + C << eb; C << eb; } |