summaryrefslogtreecommitdiff
path: root/cpp/src/Slice/Parser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/Slice/Parser.cpp')
-rw-r--r--cpp/src/Slice/Parser.cpp17
1 files changed, 2 insertions, 15 deletions
diff --git a/cpp/src/Slice/Parser.cpp b/cpp/src/Slice/Parser.cpp
index fdfbffba453..8a138ebf4a0 100644
--- a/cpp/src/Slice/Parser.cpp
+++ b/cpp/src/Slice/Parser.cpp
@@ -1178,16 +1178,8 @@ Slice::Container::lookupType(const string& scoped, bool printError)
return lookupTypeNoBuiltin(scoped, printError);
}
-//
-// TODO: Hack to keep binary compatibility with Ice 3.6.0, fix properly in Ice 3.7
-//
-namespace
-{
-bool ignoreUndefined = false;
-}
-
TypeList
-Slice::Container::lookupTypeNoBuiltin(const string& scoped, bool printError)
+Slice::Container::lookupTypeNoBuiltin(const string& scoped, bool printError, bool ignoreUndefined)
{
//
// Remove whitespace.
@@ -1304,12 +1296,7 @@ Slice::Container::lookupTypeNoBuiltin(const string& scoped, bool printError)
ContainedPtr contained = ContainedPtr::dynamicCast(this);
if(contained)
{
- if (typeError)
- {
- ignoreUndefined = true;
- }
- results = contained->container()->lookupTypeNoBuiltin(sc, printError);
- ignoreUndefined = false;
+ results = contained->container()->lookupTypeNoBuiltin(sc, printError, typeError || ignoreUndefined);
}
else if(!typeError)
{