File tree 1 file changed +13
-4
lines changed
1 file changed +13
-4
lines changed Original file line number Diff line number Diff line change @@ -169,8 +169,11 @@ void Pkb::deriveTables() {
169
169
PkbTableTransformers::closeOnce (prevLineTable));
170
170
}
171
171
172
- this ->closeChildrenTable =
173
- PkbTableTransformers::closeFlatten<PARENT>(childrenTable);
172
+ if (!childrenTable.map .empty ()) {
173
+ this ->closeChildrenTable =
174
+ PkbTableTransformers::closeWarshall (childrenTable);
175
+ }
176
+
174
177
this ->closeCallsTable =
175
178
PkbTableTransformers::closeFlatten<CALL>(this ->callsTable );
176
179
this ->closeInvertCallsTable =
@@ -250,7 +253,10 @@ KeysTable<PkbTables::LINE_NO, PkbTables::LINE_NOS> Pkb::deriveNextBipTable() {
250
253
nexts.insert (std::get<0 >(tuple));
251
254
}
252
255
}
253
- nextBipTable.insert (std::pair (entry.first , nexts));
256
+
257
+ if (!nexts.empty ()) {
258
+ nextBipTable.insert (std::pair (entry.first , nexts));
259
+ }
254
260
}
255
261
return nextBipTable;
256
262
}
@@ -371,7 +377,10 @@ Pkb::deriveAffectsBipTable() {
371
377
for (LINE_NO assign : allAssignStmts) {
372
378
VAR modifiedVar = *std::get<VARS>(modifiesTable.map [assign]).begin ();
373
379
LINE_NOS affectsBips = getAffectedBipStatements (assign, modifiedVar);
374
- affectsBipTable.insert (std::pair (assign, affectsBips));
380
+
381
+ if (!affectsBips.empty ()) {
382
+ affectsBipTable.insert (std::pair (assign, affectsBips));
383
+ }
375
384
}
376
385
return affectsBipTable;
377
386
}
You can’t perform that action at this time.
0 commit comments