Ice/patch-stream.txt

50 lines
1.4 KiB
Plaintext

diff --git a/cpp/src/slice2cpp/Gen.cpp b/cpp/src/slice2cpp/Gen.cpp
index 22355fe..4e68b64 100644
--- a/cpp/src/slice2cpp/Gen.cpp
+++ b/cpp/src/slice2cpp/Gen.cpp
@@ -6629,21 +6629,34 @@ Slice::Gen::StreamVisitor::visitModuleStart(const ModulePtr& m)
{
return false;
}
- H.zeroIndent();
- H << nl << "#if defined(_MSC_VER) && (_MSC_VER < 1300) // VC++ 6 compiler bug"; // COMPILERFIX
- H << nl << "#else";
- H.restoreIndent();
- H << nl << "namespace Ice" << nl << '{';
+ if(UnitPtr::dynamicCast(m->container()))
+ {
+ //
+ // Only emit this for the top-level module.
+ //
+ H << sp;
+ H.zeroIndent();
+ H << nl << "#if defined(_MSC_VER) && (_MSC_VER < 1300) // VC++ 6 compiler bug"; // COMPILERFIX
+ H << nl << "#else";
+ H.restoreIndent();
+ H << nl << "namespace Ice" << nl << '{';
+ }
return true;
}
void
-Slice::Gen::StreamVisitor::visitModuleEnd(const ModulePtr&)
+Slice::Gen::StreamVisitor::visitModuleEnd(const ModulePtr& m)
{
- H << nl << '}';
- H.zeroIndent();
- H << nl << "#endif";
- H.restoreIndent();
+ if(UnitPtr::dynamicCast(m->container()))
+ {
+ //
+ // Only emit this for the top-level module.
+ //
+ H << nl << '}';
+ H.zeroIndent();
+ H << nl << "#endif";
+ H.restoreIndent();
+ }
}
bool