Browse Source

HPCC-10552 More cleaning up and removing dead code

Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
Gavin Halliday 11 years ago
parent
commit
f5e2f3ba8f

+ 0 - 1
ecl/hql/hqlcollect.cpp

@@ -563,7 +563,6 @@ void CXmlEclElement::populateChildren()
 
 void CXmlEclElement::expandChildren(IPropertyTree * xml)
 {
-    const char * name = xml->queryProp("@name");
     Owned<IPropertyTreeIterator> modit = xml->getElements("Module");
     ForEach(*modit)
     {

+ 2 - 2
ecl/hql/hqlexpr.cpp

@@ -11624,7 +11624,6 @@ extern IHqlExpression *createRow(node_operator op, HqlExprArray & args)
     case no_deserialize:
         {
             assertex(args.ordinality() >= 3);
-            ITypeInfo * childType = args.item(0).queryType();
             IHqlExpression & record = args.item(1);
             IHqlExpression & form = args.item(2);
             assertex(form.isAttribute());
@@ -11634,6 +11633,7 @@ extern IHqlExpression *createRow(node_operator op, HqlExprArray & args)
 
 #ifdef _DEBUG
             OwnedITypeInfo serializedType = getSerializedForm(type, form.queryName());
+            ITypeInfo * childType = args.item(0).queryType();
             assertex(recordTypesMatch(serializedType, childType));
 #endif
             break;
@@ -12908,7 +12908,7 @@ unsigned exportField(IPropertyTree *table, IHqlExpression *field, unsigned & off
             IPropertyTree *end = createPTree("Field", ipt_caseInsensitive);
             end->setPropBool("@isEnd", true);
             end->setProp("@name", field->queryName()->getAtomNamePtr());
-            end = table->addPropTree(end->queryName(), end);
+            table->addPropTree(end->queryName(), end);
         }
         else
             thisSize = exportRecord(f, record, flatten);

+ 1 - 1
ecl/hql/hqlfold.cpp

@@ -4327,7 +4327,7 @@ void HqlConstantPercolator::doExtractConstantTransform(IHqlExpression * transfor
                 IHqlExpression * self = lhs->queryChild(0);
                 assertex(self->getOperator() == no_self);
 
-                OwnedHqlExpr selected = selector ? createSelectExpr(LINK(selector), LINK(lhs->queryChild(1))) : LINK(lhs);
+                OwnedHqlExpr selected = selector ? createSelectExpr(LINK(selector), LINK(lf)) : LINK(lhs);
                 if (rhs->isConstant())
                     addTransformMapping(selected, rhs);
                 if (lhs->isDatarow())

+ 0 - 11
ecl/hql/hqlgram2.cpp

@@ -6487,16 +6487,6 @@ IHqlExpression * HqlGram::checkBuildIndexRecord(IHqlExpression *record, attribut
 
 void HqlGram::checkBuildIndexFilenameFlags(IHqlExpression * dataset, attribute & flags)
 {
-    IHqlExpression * flagExpr = flags.queryExpr();
-    HqlExprArray args;
-    if (flagExpr)
-        flagExpr->unwindList(args, no_comma);
-
-    IHqlDataset * table = dataset->queryDataset()->queryRootTable();
-    IHqlExpression * tableExpr = NULL;
-    if (table)
-       tableExpr = queryExpression(table);
-
 }
 
 
@@ -8984,7 +8974,6 @@ IHqlExpression * HqlGram::attachMetaAttributes(IHqlExpression * ownedExpr, HqlEx
 
 void HqlGram::defineSymbolInScope(IHqlScope * scope, DefineIdSt * defineid, IHqlExpression * expr, IHqlExpression * failure, const attribute & idattr, int assignPos, int semiColonPos, bool isParametered, HqlExprArray & parameters, IHqlExpression * defaults)
 {
-    IHqlScope * exprScope = expr->queryScope();
     IHqlExpression * scopeExpr = queryExpression(scope);
     IIdAtom * moduleName = NULL;
     if (!inType)

+ 1 - 11
ecl/hql/hqlopt.cpp

@@ -2564,6 +2564,7 @@ IHqlExpression * CTreeOptimizer::doCreateTransformed(IHqlExpression * transforme
                     okToContinue = true;
                     break;
                 }
+                break;
             }
         case no_hqlproject:
             {
@@ -2795,7 +2796,6 @@ IHqlExpression * CTreeOptimizer::doCreateTransformed(IHqlExpression * transforme
     case no_filter:
         {
             node_operator childOp = child->getOperator();
-            IHqlExpression * newGrandchild = child->queryChild(0);
             switch(childOp)
             {
             case no_filter:
@@ -3668,16 +3668,6 @@ IHqlExpression * CTreeOptimizer::doCreateTransformed(IHqlExpression * transforme
             node_operator childOp = child->getOperator();
             switch (childOp)
             {
-            case no_projectrow:
-                {
-                    break;
-                    IHqlExpression * grand = child->queryChild(0);
-                    IHqlExpression * base = createDatasetFromRow(LINK(grand));
-                    HqlExprArray args;
-                    unwindChildren(args, child);
-                    args.replace(*base, 0);
-                    return createDataset(no_hqlproject, args);
-                }
             case no_createrow:
                 {
                     DBGLOG("Optimizer: Merge %s and %s to Inline table", queryNode0Text(transformed), queryNode1Text(child));

+ 0 - 5
ecl/hql/hqltrans.cpp

@@ -2019,7 +2019,6 @@ IHqlExpression * replaceExpression(IHqlExpression * expr, IHqlExpression * origi
     //specially update selectors in nested expressions.
     if (original->isDataset())
     {
-        IHqlExpression * table = queryTable(original);
         if (!definesColumnList(original) && definesColumnList(replacement))
         {
             HqlMapDatasetTransformer simpleTransformer;
@@ -4475,8 +4474,6 @@ bool ScopedDependentTransformer::setLeft(IHqlExpression * _left, IHqlExpression
 {
     ScopedTransformer::setLeft(_left, seq);
     return false;
-    pushChildContext(cachedLeft, cachedLeft);
-    return true;
 }
 
 
@@ -4484,8 +4481,6 @@ bool ScopedDependentTransformer::setLeftRight(IHqlExpression * _left, IHqlExpres
 {
     ScopedTransformer::setLeftRight(_left, _right, seq);
     return false;
-    pushChildContext(cachedRight, cachedRight);
-    return true;
 }
 
 

+ 5 - 13
ecl/hqlcpp/hqlcpp.cpp

@@ -549,7 +549,6 @@ IHqlExpression * getOptimialListFormat(IHqlExpression * table)
 
 bool canOptimizeAdjust(IHqlExpression * value)
 {
-    ITypeInfo * type = value->queryType();
     switch (value->getOperator())
     {
     case no_constant:
@@ -688,8 +687,6 @@ IHqlExpression * adjustBoundIntegerValues(IHqlExpression * left, IHqlExpression
                 IHqlExpression * rr = right->queryChild(1);
                 if (rr->getOperator() == no_constant)
                 {
-                    ITypeInfo * rlt = rl->queryType();
-                    ITypeInfo * rrt = rr->queryType();
                     if (queryUnqualifiedType(rl->queryType()) == queryUnqualifiedType(rr->queryType()))
                     {
                         __int64 delta = rr->queryValue()->getIntValue();
@@ -1752,14 +1749,14 @@ void HqlCppTranslator::cacheOptions()
     //Configure the divide by zero action
     options.divideByZeroAction = DBZzero;
     const char * dbz = wu()->getDebugValue("divideByZero",val).str();
-    if (strieq(val.str(), "0") || strieq(val.str(), "zero"))
+    if (strieq(dbz, "0") || strieq(dbz, "zero"))
         options.divideByZeroAction = DBZzero;
-    else if (strieq(val.str(), "nan"))
+    else if (strieq(dbz, "nan"))
         options.divideByZeroAction = DBZnan;
-    else if (strieq(val.str(), "fail") || strieq(val.str(), "throw"))
+    else if (strieq(dbz, "fail") || strieq(dbz, "throw"))
         options.divideByZeroAction = DBZfail;
     else if (val.length())
-        throwError2(HQLERR_UnexpectedOptionValue_XY, "divideByZero", val.str());
+        throwError2(HQLERR_UnexpectedOptionValue_XY, "divideByZero", dbz);
 
     //The following cases handle options whose default values are dependent on other options.  
     //Or where one debug options sets more than one option
@@ -7562,7 +7559,6 @@ void HqlCppTranslator::doBuildExprList(BuildCtx & ctx, IHqlExpression * expr, CH
     case type_array:
         {
             LinkedHqlExpr values = expr;
-            ITypeInfo * childType = type->queryChildType();
             //MORE: Also alien data types and other weird things...
             //if (childType->getSize() == UNKNOWN_LENGTH)
             if (expr->numChildren() == 0)
@@ -8630,7 +8626,6 @@ protected:
 void HqlCppTranslator::doBuildAssignHashCrc(BuildCtx & ctx, const CHqlBoundTarget & target, IHqlExpression * expr)
 {
     IHqlExpression * child = expr->queryChild(0);
-    ITypeInfo * childType = child->queryType();
 
     LinkedHqlExpr initialValue = queryZero();
     node_operator op = expr->getOperator();
@@ -8878,7 +8873,7 @@ void HqlCppTranslator::doBuildAssignHashElement(BuildCtx & ctx, HashCodeCreator
             {
                 creator.beginCondition(ctx);
                 BuildCtx iterctx(ctx);
-                BoundRow * row = buildDatasetIterate(iterctx, elem, false);
+                buildDatasetIterate(iterctx, elem, false);
                 doBuildAssignHashElement(iterctx, creator, elem->queryNormalizedSelector(), elem->queryRecord());
                 creator.endCondition(iterctx);
                 return;
@@ -8908,7 +8903,6 @@ void HqlCppTranslator::doBuildAssignHashElement(BuildCtx & ctx, HashCodeCreator
 void HqlCppTranslator::doBuildAssignHashMd5(BuildCtx & ctx, const CHqlBoundTarget & target, IHqlExpression * expr)
 {
     IHqlExpression * child = expr->queryChild(0);
-    ITypeInfo * childType = child->queryType();
 
     Owned<ITypeInfo> stateType = makeDataType(sizeof(md5_state_s));
     //initialize the state object
@@ -9427,7 +9421,6 @@ void HqlCppTranslator::doBuildAssignSubString(BuildCtx & ctx, const CHqlBoundTar
         CHqlBoundExpr boundSrc;
         buildCachedExpr(ctx, info.src, boundSrc);
         info.bindToFrom(*this, ctx);
-        ITypeInfo * sourceType = boundSrc.queryType();
 
         if (!info.boundFrom.expr)
             info.boundFrom.expr.setown(getSizetConstant(1));
@@ -11782,7 +11775,6 @@ IHqlExpression * HqlCppTranslator::getBoundSize(ITypeInfo * type, IHqlExpression
 {
     type_t tc = type->getTypeCode();
 
-    ITypeInfo * lengthType = length->queryType();
     switch (tc)
     {
     case type_qstring:

+ 2 - 6
ecl/hqlcpp/hqlcppds.cpp

@@ -1375,7 +1375,6 @@ void ChildGraphBuilder::generateGraph(BuildCtx & ctx)
     //Remove this line once all engines use the new child queries exclusively
     if (numResults == 0) numResults++;
 
-    IHqlExpression * query = childQuery->queryChild(2);
     OwnedHqlExpr resourced = translator.getResourcedChildGraph(graphctx, childQuery, numResults, no_none);
 
     Owned<ParentExtract> extractBuilder = translator.createExtractBuilder(graphctx, PETchild, represents, resourced, true);
@@ -1424,7 +1423,6 @@ void ChildGraphBuilder::generatePrefetchGraph(BuildCtx & _ctx, OwnedHqlExpr * re
     BuildCtx aliasctx(ctx);
     aliasctx.addGroup();
 
-    IHqlExpression * query = childQuery->queryChild(2);
     OwnedHqlExpr resourced = translator.getResourcedChildGraph(ctx, childQuery, numResults, no_none);
 
     Owned<ParentExtract> extractBuilder = translator.createExtractBuilder(ctx, PETchild, represents, resourced, false);
@@ -1456,7 +1454,6 @@ unique_id_t ChildGraphBuilder::buildLoopBody(BuildCtx & ctx, bool multiInstance)
     BuildCtx subctx(ctx);
     subctx.addGroup();
 
-    IHqlExpression * query = childQuery->queryChild(2);
     OwnedHqlExpr resourced = translator.getResourcedChildGraph(ctx, childQuery, numResults, no_loop);
     //Add a flag to indicate multi instance
     if (multiInstance)
@@ -1591,7 +1588,6 @@ unique_id_t ChildGraphBuilder::buildRemoteGraph(BuildCtx & ctx)
     BuildCtx subctx(ctx);
     subctx.addGroup();
 
-    IHqlExpression * query = childQuery->queryChild(2);
     OwnedHqlExpr resourced = translator.getResourcedChildGraph(ctx, childQuery, numResults, no_allnodes);
 
     Owned<ParentExtract> extractBuilder = translator.createExtractBuilder(ctx, PETremote, represents, GraphRemote, false);
@@ -4241,7 +4237,7 @@ void HqlCppTranslator::doBuildRowAssignAggregate(BuildCtx & ctx, IReferenceSelec
 
     doBuildRowAssignAggregateClear(ctx, target, expr);
     BuildCtx condctx(ctx);
-    BoundRow * cursor = buildDatasetIterate(condctx, dataset, isSingleExists);
+    buildDatasetIterate(condctx, dataset, isSingleExists);
     doBuildRowAssignAggregateNext(condctx, target, expr, isSingleExists, guard);
 }
 
@@ -5340,7 +5336,7 @@ void HqlCppTranslator::doBuildStmtApply(BuildCtx & ctx, IHqlExpression * expr)
     if (start)
         buildStmt(ctx, start->queryChild(0));
     BuildCtx condctx(ctx);
-    BoundRow * cursor = buildDatasetIterate(condctx, dataset, false);
+    buildDatasetIterate(condctx, dataset, false);
     unsigned max = expr->numChildren();
     for (unsigned i=1; i < max; i++)
     {

+ 2 - 7
ecl/hqlcpp/hqlcse.cpp

@@ -534,13 +534,8 @@ bool CseSpotter::checkPotentialCSE(IHqlExpression * expr, CseSpotterInfo * extra
         return true;
     case no_substring:
         {
-            IHqlExpression * child = expr->queryChild(0);
-//          if (queryBodyExtra(child)->isAliased())
-            {
-                SubStringHelper helper(expr);
-                return !helper.canGenerateInline();
-            }
-            return true;
+            SubStringHelper helper(expr);
+            return !helper.canGenerateInline();
         }
     case no_cast:
     case no_implicitcast:

+ 5 - 10
ecl/hqlcpp/hqlcset.cpp

@@ -1264,7 +1264,7 @@ void GeneralSetCursor::buildExprSelect(BuildCtx & ctx, IHqlExpression * indexExp
             checkNotAll(ctx);
 
         OwnedHqlExpr dsIndexExpr = createDatasetSelect(indexExpr);
-        BoundRow * cursor = dsCursor->buildSelectNth(ctx, dsIndexExpr);
+        dsCursor->buildSelectNth(ctx, dsIndexExpr);
         OwnedHqlExpr select = createSelectExpr(LINK(dsIndexExpr), LINK(element));
         translator.buildExpr(ctx, select, tgt);
     }
@@ -1361,7 +1361,7 @@ void CreateSetCursor::buildIsAll(BuildCtx & ctx, CHqlBoundExpr & tgt)
 
 void CreateSetCursor::buildIterateLoop(BuildCtx & ctx, CHqlBoundExpr & curBound, bool needToBreak)
 {
-    BoundRow * cursor = dsCursor->buildIterateLoop(ctx, needToBreak);
+    dsCursor->buildIterateLoop(ctx, needToBreak);
     translator.buildExpr(ctx, value, curBound);
 }
 
@@ -2003,9 +2003,7 @@ IHqlCppDatasetBuilder * HqlCppTranslator::createLinkedDictionaryBuilder(IHqlExpr
 
 IHqlCppDatasetBuilder * HqlCppTranslator::createSingleRowTempDatasetBuilder(IHqlExpression * record, BoundRow * row)
 {
-//  if (translator.isFixedRecordSize(record))
-        return new SingleRowTempDatasetBuilder(*this, record, row);
-    return createBlockedDatasetBuilder(record);
+    return new SingleRowTempDatasetBuilder(*this, record, row);
 }
 
 IHqlCppDatasetBuilder * HqlCppTranslator::createInlineDatasetBuilder(IHqlExpression * record, IHqlExpression * size, IHqlExpression * address)
@@ -2057,12 +2055,9 @@ void HqlCppTranslator::buildSetAssign(BuildCtx & ctx, IHqlCppSetBuilder * builde
         doBuildSetAssignAndCast(ctx, builder, expr->queryChild(0));
         break;
     case no_addsets:
+        //MORE: Cannot assign left then right because it hneeds to correctly cope with ALL
         doBuildSetAssignAndCast(ctx, builder, expr);
         break;
-        //MORE: This is wrong because needs to cope with all.
-        buildSetAssign(ctx, builder, expr->queryChild(0));
-        buildSetAssign(ctx, builder, expr->queryChild(1));
-        break;
     case no_all:
         builder->setAll(ctx, queryBoolExpr(true));
         break;
@@ -2092,7 +2087,7 @@ void HqlCppTranslator::buildSetAssign(BuildCtx & ctx, IHqlCppSetBuilder * builde
             IHqlExpression * value = expr->queryChild(1);
             builder->setAll(ctx, queryBoolExpr(false));
             BuildCtx subctx(ctx);
-            BoundRow * cursor = buildDatasetIterate(subctx, ds, false);
+            buildDatasetIterate(subctx, ds, false);
             Owned<IReferenceSelector> selector = builder->buildCreateElement(subctx);
             selector->set(subctx, value);
             builder->finishElement(subctx);

+ 13 - 23
ecl/hqlcpp/hqlhtcpp.cpp

@@ -1581,7 +1581,6 @@ void HqlCppTranslator::finalizeTempRow(BuildCtx & ctx, BoundRow * row, BoundRow
     IHqlExpression * rowBuilder = builder->queryBound();
     bool targetIsOwnedRow = hasWrapperModifier(targetRow->queryType());
 
-    IHqlExpression * record = rowBuilder->queryRecord();
     if (builder->queryBuilder() && targetIsOwnedRow)
     {
         OwnedHqlExpr createdRowSize = getRecordSize(builder->querySelector());
@@ -3454,7 +3453,7 @@ bool HqlCppTranslator::buildMetaPrefetcherClass(BuildCtx & ctx, IHqlExpression *
     bool ok;
     {
         BuildCtx prefetchctx(prefetcher.startctx);
-        IHqlStmt * stmt = prefetchctx.addQuotedCompound("virtual void readAhead(IRowDeserializerSource & in)");
+        prefetchctx.addQuotedCompound("virtual void readAhead(IRowDeserializerSource & in)");
         OwnedHqlExpr helper = createVariable("in", makeBoolType());
 
         ok = queryRecordOffsetMap(record)->buildReadAhead(*this, prefetchctx, helper);
@@ -5975,7 +5974,10 @@ IReferenceSelector * HqlCppTranslator::buildReference(BuildCtx & ctx, IHqlExpres
     case no_select:
         {
             IHqlExpression * ds = expr->queryChild(0);
+#ifdef _DEBUG
+            //Here to make tracing easier in a debugger
             IHqlExpression * field = expr->queryChild(1);
+#endif
             Owned<IReferenceSelector> selector;
             if (isNewSelector(expr))
             {
@@ -7606,7 +7608,6 @@ void HqlCppTranslator::doBuildExprSizeof(BuildCtx & ctx, IHqlExpression * expr,
         return;
 
     IHqlExpression * child = expr->queryChild(0);
-    IHqlExpression * limitExpr = expr->queryChild(1);
     ITypeInfo * type = child->queryType();
     if (expr->hasAttribute(maxAtom))
     {
@@ -7675,6 +7676,7 @@ void HqlCppTranslator::doBuildExprSizeof(BuildCtx & ctx, IHqlExpression * expr,
     }
 
 #if 0
+    IHqlExpression * limitExpr = expr->queryChild(1);
     if (limitExpr)
     {
         OwnedHqlExpr other = createValue(no_sizeof, expr->getType(), LINK(child));
@@ -8732,7 +8734,6 @@ ABoundActivity * HqlCppTranslator::doBuildActivityApply(BuildCtx & ctx, IHqlExpr
 {
     StringBuffer s;
     IHqlExpression * dataset = expr->queryChild(0);
-    IHqlExpression * action = expr->queryChild(1);
     IHqlExpression * start = expr->queryAttribute(beforeAtom);
     IHqlExpression * end = expr->queryAttribute(afterAtom);
     Owned<ABoundActivity> boundDataset = buildCachedActivity(ctx, dataset);
@@ -9420,7 +9421,7 @@ void HqlCppTranslator::buildCsvWriteTransform(BuildCtx & subctx, IHqlExpression
                 buildCsvWriteScalar(subctx, translatedCount, encoding);
 
                 BuildCtx loopctx(subctx);
-                BoundRow * row = cursor->buildIterateLoop(loopctx, false);
+                cursor->buildIterateLoop(loopctx, false);
                 buildCsvWriteTransform(loopctx, expr->queryRecord(), selected, encoding);
                 return;
             }
@@ -9899,7 +9900,6 @@ ABoundActivity * HqlCppTranslator::doBuildActivityOutputIndex(BuildCtx & ctx, IH
     IHqlExpression * dataset  = expr->queryChild(0);
     IHqlExpression * filename = queryRealChild(expr, 1);
     IHqlExpression * record = dataset->queryRecord();
-    IHqlDataset * baseTable = dataset->queryDataset()->queryRootTable();
 
     Owned<ABoundActivity> boundDataset = buildCachedActivity(ctx, dataset);
     Owned<ActivityInstance> instance = new ActivityInstance(*this, ctx, TAKindexwrite, expr, "IndexWrite");
@@ -10834,7 +10834,6 @@ void HqlCppTranslator::buildXmlSerializeUsingMeta(BuildCtx & ctx, IHqlExpression
 ABoundActivity * HqlCppTranslator::doBuildActivityOutputWorkunit(BuildCtx & ctx, IHqlExpression * expr, bool isRoot)
 {
     IHqlExpression * dataset = expr->queryChild(0);
-    IHqlExpression * record = dataset->queryRecord();
     IHqlExpression * seq = querySequence(expr);
     IHqlExpression * name = queryResultName(expr);
     int sequence = (int)getIntValue(seq, ResultSequenceInternal);
@@ -10968,7 +10967,6 @@ void HqlCppTranslator::doBuildStmtOutput(BuildCtx & ctx, IHqlExpression * expr)
 ABoundActivity * HqlCppTranslator::doBuildActivityDictionaryWorkunitWrite(BuildCtx & ctx, IHqlExpression * expr, bool isRoot)
 {
     IHqlExpression * dictionary = expr->queryChild(0);
-    IHqlExpression * record = dictionary->queryRecord();
     IHqlExpression * seq = querySequence(expr);
     IHqlExpression * name = queryResultName(expr);
     int sequence = (int)getIntValue(seq, ResultSequenceInternal);
@@ -11493,7 +11491,6 @@ ABoundActivity * HqlCppTranslator::doBuildActivityJoinOrDenormalize(BuildCtx & c
 
     LinkedHqlExpr dataset1 = expr->queryChild(0);
     LinkedHqlExpr dataset2 = queryJoinRhs(expr);
-    IHqlExpression * condition = expr->queryChild(2);
     IHqlExpression * transform = expr->queryChild(3);
     IHqlExpression * noSortAttr = expr->queryAttribute(noSortAtom);
     IHqlExpression * rowlimit = expr->queryAttribute(rowLimitAtom);
@@ -12102,7 +12099,10 @@ BoundRow * HqlCppTranslator::buildTransformCursors(BuildCtx & ctx, IHqlExpressio
         rightRow = bindTableCursor(ctx, right, "right", no_right, selSeq);
 
     if (options.precalculateFieldOffsets)
+    {
         precalculateFieldOffsets(ctx, transform, leftRow);
+        precalculateFieldOffsets(ctx, transform, rightRow);
+    }
     return bindSelf(ctx, self, "crSelf");
 }
 
@@ -12435,7 +12435,6 @@ void HqlCppTranslator::doBuildAggregateFirstFunc(BuildCtx & ctx, IHqlExpression
 {
     IHqlExpression * dataset = expr->queryChild(0);
     IHqlExpression * tgtRecord = expr->queryChild(1);
-    IHqlExpression * transform = expr->queryChild(2);
 
     BuildCtx funcctx(ctx);
     funcctx.addQuotedCompound("virtual size32_t processFirst(ARowBuilder & crSelf, const void * _src)");
@@ -12607,12 +12606,10 @@ void HqlCppTranslator::doBuildAggregateMergeFunc(BuildCtx & ctx, IHqlExpression
 
     OwnedHqlExpr resultDataset = createDataset(no_anon, LINK(tgtRecord));
     BoundRow * selfRow = bindSelf(funcctx, resultDataset, "crSelf");
-    BoundRow * leftCursor = bindTableCursor(funcctx, resultDataset, "left", no_left, selSeq);
     BoundRow * rightCursor = bindTableCursor(funcctx, resultDataset, "right", no_right, selSeq);
 
     unsigned numAggregates = transform->numChildren();
     unsigned idx;
-    IHqlExpression * left = leftCursor->querySelector();
     IHqlExpression * right = rightCursor->querySelector();
     OwnedHqlExpr self = getSelf(tgtRecord);
     for (idx = 0; idx < numAggregates; idx++)
@@ -12948,7 +12945,6 @@ public:
     {
         IHqlExpression * dataset = expr->queryChild(0);
         IHqlExpression * selSeq = querySelSeq(expr);
-        IHqlExpression * rowsid = expr->queryAttribute(_rowsid_Atom);
         self.setown(getSelf(expr));
         left.setown(createSelector(no_left, dataset, selSeq));
         right.setown(createSelector(no_right, expr, selSeq));
@@ -13049,9 +13045,6 @@ IHqlExpression * HqlCppTranslator::getUserAggregateMergeTransform(IHqlExpression
 
 void HqlCppTranslator::doBuildUserMergeAggregateFunc(BuildCtx & ctx, IHqlExpression * expr, IHqlExpression * mergeTransform)
 {
-    IHqlExpression * dataset = expr->queryChild(0);
-    IHqlExpression * tgtRecord = expr->queryChild(1);
-    IHqlExpression * transform = expr->queryChild(2);
     IHqlExpression * selSeq = querySelSeq(expr);
     if (!mergeTransform)
         throwError(HQLERR_AggregateNeedMergeTransform);
@@ -13121,9 +13114,9 @@ void HqlCppTranslator::doBuildUserAggregateFuncs(BuildCtx & ctx, IHqlExpression
         ensureRowAllocated(funcctx, "crSelf");
         funcctx.addQuoted("unsigned char * src = (unsigned char *) _src;");
 
-        BoundRow * leftCursor = bindTableCursor(funcctx, dataset, "src", options.mainRowsAreLinkCounted, no_left, selSeq);
         BoundRow * selfCursor = bindSelf(funcctx, expr, "crSelf");
-        BoundRow * rightCursor = bindTableCursor(funcctx, expr, "crSelf.row()", no_right, querySelSeq(expr));
+        bindTableCursor(funcctx, dataset, "src", options.mainRowsAreLinkCounted, no_left, selSeq);
+        bindTableCursor(funcctx, expr, "crSelf.row()", no_right, selSeq);
 
         doBuildUserAggregateProcessTransform(funcctx, selfCursor, expr, nextTransform, queryBoolExpr(true));
         buildReturnRecordSize(funcctx, selfCursor);
@@ -14518,7 +14511,7 @@ ABoundActivity * HqlCppTranslator::doBuildActivityPrefetchProject(BuildCtx & ctx
         {
             //Generate the extract preparation function
             BuildCtx prectx(instance->startctx);
-            IHqlStmt * preStmt = prectx.addQuotedCompound("virtual bool preTransform(rtlRowBuilder & builder, const void * _left, unsigned __int64 _counter)");
+            prectx.addQuotedCompound("virtual bool preTransform(rtlRowBuilder & builder, const void * _left, unsigned __int64 _counter)");
             associateSkipReturnMarker(prectx, queryBoolExpr(false), NULL);
             prectx.addQuoted("const unsigned char * left = (const unsigned char *) _left;");
             if (expr->getOperator() == no_hqlproject)
@@ -14706,7 +14699,7 @@ ABoundActivity * HqlCppTranslator::doBuildActivitySerialize(BuildCtx & ctx, IHql
     funcctx.addQuotedCompound("virtual size32_t transform(ARowBuilder & crSelf, const void * _left)");
 
     // Bind left to "left" and right to RIGHT
-    BoundRow * leftCursor = bindTableCursor(funcctx, dataset, "_left");
+    bindTableCursor(funcctx, dataset, "_left");
     BoundRow * selfCursor = bindSelf(funcctx, expr, "crSelf");
 
     //MORE: I don't have any examples that trigger this code as far as I know...
@@ -16366,7 +16359,6 @@ ABoundActivity * HqlCppTranslator::doBuildActivityTempTable(BuildCtx & ctx, IHql
 
     OwnedHqlExpr values = normalizeListCasts(expr->queryChild(0));
     IHqlExpression * record = expr->queryChild(1);
-    IHqlExpression * defaults = expr->queryChild(2);
 
     assertex(values->getOperator() != no_recordlist);       // should have been transformed by now.
 
@@ -17669,7 +17661,6 @@ static void expandDistributionFields(IHqlExpression * record, HqlExprArray & sel
             {
                 OwnedHqlExpr selected = selector ? createSelectExpr(LINK(selector), LINK(cur)) : LINK(cur);
 
-                IAtom * name = cur->queryName();
                 if (cur->queryType()->getTypeCode() == type_row)
                 {
                     expandDistributionFields(cur->queryRecord(), selects, selected);
@@ -17696,7 +17687,6 @@ ABoundActivity * HqlCppTranslator::doBuildActivityDistribution(BuildCtx & ctx, I
     IHqlExpression * dataset = expr->queryChild(0);
     IHqlExpression * fields = queryRealChild(expr, 1);
     IHqlExpression * sequence = expr->queryAttribute(sequenceAtom);
-    IHqlExpression * name = queryAttributeChild(expr, namedAtom, 0);
 
     if (!sequence)
         throwError(HQLERR_DistributionNoSequence);

+ 0 - 1
ecl/hqlcpp/hqliproj.cpp

@@ -2452,7 +2452,6 @@ void ImplicitProjectTransformer::calculateFieldsUsed(IHqlExpression * expr)
                         if ((cur->getOperator() == no_select) && !isNewSelector(cur))
                         {
                             IHqlExpression * ds = queryDatasetCursor(cur);
-                            IHqlExpression * field = cur->queryChild(1);
                             if (ds == queryActiveTableSelector())
                                 processMatchingSelector(extra->outputFields, cur, queryActiveTableSelector());
                             else

+ 0 - 1
ecl/hqlcpp/hqlresource.cpp

@@ -4518,7 +4518,6 @@ static IHqlExpression * getScalarReplacement(CChildDependent & cur, ResourcerInf
     //Now modify the spilled result depending on how the spilled result was created (see EclHoistLocator::noteScalar() above)
     if (value->getOperator() == no_select)
     {
-        IHqlExpression * field = value->queryChild(1);
         bool isNew;
         IHqlExpression * ds = querySelectorDataset(value, isNew);
         if(isNew || ds->isDatarow())

+ 4 - 4
ecl/hqlcpp/hqlsource.cpp

@@ -631,8 +631,8 @@ public:
                 translator.ensureRowAllocated(transformctx, "crSelf");
                 transformctx.addQuoted("const byte * pr = (const byte *)_projected;");
 
-                BoundRow * self = translator.bindTableCursor(transformctx, rawStepping.ds, "crSelf.row()");
-                BoundRow * pr = translator.bindTableCursor(transformctx, outputStepping.ds, "pr");
+                translator.bindTableCursor(transformctx, rawStepping.ds, "crSelf.row()");
+                translator.bindTableCursor(transformctx, outputStepping.ds, "pr");
                 StringBuffer s;
                 ForEachChild(i, outputStepping.fields)
                 {
@@ -6856,7 +6856,7 @@ void HqlCppTranslator::buildXmlReadTransform(IHqlExpression * dataset, StringBuf
     xmlUsesContents = false;
     //MORE: If this becomes a compound activity
     BoundRow * rootSelfRow = bindSelf(funcctx, dataset, "crSelf");
-    BoundRow * xmlCursor = bindXmlTableCursor(funcctx, dataset, "row", no_none, NULL, true);
+    bindXmlTableCursor(funcctx, dataset, "row", no_none, NULL, true);
     OwnedHqlExpr activityId = createVariable("activityId", LINK(sizetType));
     funcctx.associateExpr(queryActivityIdMarker(), activityId);
 
@@ -6892,7 +6892,7 @@ unsigned HqlCppTranslator::buildCsvReadTransform(BuildCtx & subctx, IHqlExpressi
 
     //MORE: If this becomes a compound activity
     BoundRow * rootSelfRow = bindSelf(funcctx, dataset, "crSelf");
-    BoundRow * xmlCursor = bindCsvTableCursor(funcctx, dataset, "Src", no_none, NULL, true, queryCsvEncoding(csvAttr));
+    bindCsvTableCursor(funcctx, dataset, "Src", no_none, NULL, true, queryCsvEncoding(csvAttr));
     ensureRowAllocated(funcctx, rootSelfRow);
 
     if (newInterface)

+ 1 - 1
ecl/hqlcpp/hqltcppc.cpp

@@ -2709,7 +2709,7 @@ IHqlExpression * CXmlColumnInfo::getXmlDatasetExpr(HqlCppTranslator & translator
     IHqlExpression * path = selector->queryExpr();
     StringBuffer subPrefix;
     BoundRow * selfCursor = translator.bindSelf(loopctx, path, targetRow->queryBound(), targetRow->queryBuilder());
-    BoundRow * srcCursor = translator.bindXmlTableCursor(loopctx, path, subRowExpr, no_none, NULL, false);
+    translator.bindXmlTableCursor(loopctx, path, subRowExpr, no_none, NULL, false);
     OwnedHqlExpr active = ensureActiveRow(path);
     translator.buildAssign(loopctx, selfCursor->querySelector(), active);
     translator.finishSelf(loopctx, selfCursor, targetRow);

+ 0 - 3
ecl/hqlcpp/hqltomita.cpp

@@ -751,9 +751,6 @@ void TomRule::getFeatures(TomFeatureArray & target)
 
 StringBuffer & TomRule::getName(StringBuffer & out)
 {
-    IHqlExpression * expr = def;
-    if (expr && expr->isAttribute())
-        expr = expr->queryChild(0);
     if (cachedName)
         out.append(cachedName);
     else if (id)

+ 0 - 7
ecl/hqlcpp/hqlttcpp.cpp

@@ -1764,7 +1764,6 @@ static IHqlExpression * simplifySortlistComplexity(IHqlExpression * sortlist)
 static IHqlExpression * normalizeIndexBuild(IHqlExpression * expr, bool sortIndexPayload, bool alwaysLocal, bool allowImplicitSubSort)
 {
     LinkedHqlExpr dataset = expr->queryChild(0);
-    IHqlExpression * normalizedDs = dataset->queryNormalizedSelector();
     IHqlExpression * buildRecord = dataset->queryRecord();
 
     // If any field types collate differently before and after translation to their hozed
@@ -3129,7 +3128,6 @@ IHqlExpression * ThorHqlTransformer::normalizeSort(IHqlExpression * expr)
 
 IHqlExpression * ThorHqlTransformer::normalizeSubSort(IHqlExpression * expr)
 {
-    IHqlExpression * dataset = expr->queryChild(0);
     IHqlExpression * sortlist = expr->queryChild(1);
     IHqlExpression * grouping = expr->queryChild(2);
     OwnedHqlExpr newsort = simplifySortlistComplexity(sortlist);
@@ -3163,7 +3161,6 @@ IHqlExpression * ThorHqlTransformer::normalizeSortSteppedIndex(IHqlExpression *
     node_operator datasetOp = dataset->getOperator();
     if ((datasetOp == no_keyindex) || (datasetOp == no_newkeyindex))
     {
-        IHqlExpression * indexRecord = dataset->queryRecord();
         if (!dataset->hasAttribute(attrName))
         {
             HqlExprArray selects;
@@ -5190,7 +5187,6 @@ void GlobalAttributeInfo::doSplitGlobalDefinition(ITypeInfo * type, IHqlExpressi
     }
     else
     {
-        ITypeInfo * ct = type->queryChildType();
         if (type->getTypeCode() == type_set)
             extraSetAttr.setown(createComma(extraSetAttr.getClear(), createAttribute(_original_Atom, createValue(no_implicitcast, LINK(type), LINK(value)))));
         setOutput.setown(createSetValue(value, queryAlias(value)));
@@ -7595,8 +7591,6 @@ IHqlExpression * NewScopeMigrateTransformer::hoist(IHqlExpression * expr, IHqlEx
     if (minimizeWorkunitTemporaries)
         return createWrapper(no_globalscope, LINK(hoisted));
     IHqlExpression * setResult = createSetResult(hoisted);
-    IHqlExpression * seqAttr = setResult->queryAttribute(sequenceAtom);
-    IHqlExpression * aliasAttr = setResult->queryAttribute(namedAtom);
     appendToTarget(*setResult);
 
     return createGetResultFromSetResult(setResult);
@@ -10653,7 +10647,6 @@ IHqlExpression * HqlTreeNormalizer::removeDefaultsFromExpr(IHqlExpression * expr
     IHqlExpression * oldRecord = expr->queryChild(recordChildIndex);
     OwnedHqlExpr newRecord = transform(oldRecord);
 
-    IHqlExpression * ds = expr->queryChild(0);
     HqlExprArray assigns;
     OwnedHqlExpr self = getSelf(newRecord);
     convertRecordToAssigns(assigns, oldRecord, self, false, false);

+ 2 - 0
roxie/roxiemem/roxiemem.cpp

@@ -2232,6 +2232,8 @@ class BufferedRowCallbackManager
         ReleaseBufferThread(BufferedRowCallbackManager & _owner)
         : Thread("ReleaseBufferThread"), owner(_owner), abort(false)
         {
+            args.critical = false;
+            args.result = NULL;
         }
 
         virtual int run()

+ 1 - 1
roxie/udplib/udptrr.cpp

@@ -490,7 +490,7 @@ class CReceiveManager : public CInterface, implements IReceiveManager
 
     public:
         receive_sniffer(CReceiveManager &_parent, unsigned _snifferPort, const IpAddress &_snifferIP, unsigned numNodes)
-          : Thread("udplib::receive_sniffer"), parent(_parent), snifferPort(_snifferPort), snifferIP(_snifferIP)
+          : Thread("udplib::receive_sniffer"), parent(_parent), snifferPort(_snifferPort), snifferIP(_snifferIP), running(false)
         {
             snifferTable = new SnifferEntry[numNodes];
             sniffer_socket = ISocket::multicast_create(snifferPort, snifferIP);