svf-tools 1.0.488 → 1.0.491

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -96,10 +96,11 @@ void CFGNormalizer::ebnf_bin(CFLGrammar *grammar)
96
96
  }
97
97
  }
98
98
 
99
- auto &rawProductions = grammar->getRawProductions();
99
+ auto rawProductions = grammar->getRawProductions();
100
100
 
101
- for(auto head : rawProductions)
101
+ for(auto itr : rawProductions)
102
102
  {
103
+ auto head = *(grammar->getRawProductions().find(itr.first));
103
104
  for(auto rule: head.second)
104
105
  {
105
106
  if (rule.size() < 3) continue;
@@ -203,20 +204,17 @@ void CFGNormalizer::ebnf_bin(CFLGrammar *grammar)
203
204
  RHX = tempSym;
204
205
  }
205
206
  }
206
-
207
-
208
- for (auto new_head : new_grammar)
207
+ }
208
+ }
209
+ for (auto new_head : new_grammar)
210
+ {
211
+ for (auto prod : new_head.second)
212
+ {
213
+ auto it = grammar->getRawProductions()[new_head.first].find(prod);
214
+ if (it == grammar->getRawProductions()[new_head.first].end())
209
215
  {
210
- for (auto prod : new_head.second)
211
- {
212
- auto it = grammar->getRawProductions()[new_head.first].find(prod);
213
- if (it == grammar->getRawProductions()[new_head.first].end())
214
- {
215
- grammar->getRawProductions()[new_head.first].insert(prod);
216
- }
217
- }
216
+ grammar->getRawProductions()[new_head.first].insert(prod);
218
217
  }
219
-
220
218
  }
221
219
  }
222
220
  }
@@ -1275,9 +1275,9 @@ void SVFIRBuilder::handleExtCall(CallSite cs, const SVFFunction *callee)
1275
1275
  }
1276
1276
  case ExtAPI::EXT_LOADSTORE:
1277
1277
  {
1278
- NodeID vnD = parseNode(args[0], cs, inst);
1278
+ NodeID vnS = parseNode(args[0], cs, inst);
1279
1279
  NodeID vnV = parseNode(args[1], cs, inst);
1280
- NodeID vnS = parseNode(args[2], cs, inst);
1280
+ NodeID vnD = parseNode(args[2], cs, inst);
1281
1281
  if (vnD && vnV && vnS)
1282
1282
  {
1283
1283
  addLoadEdge(vnS, vnV);
@@ -172,7 +172,7 @@ cJSON *ExtAPI::get_FunJson(const std::string funName)
172
172
  }
173
173
  free(jsonStr);
174
174
  }
175
- return cJSON_GetObjectItem(root, funName.c_str());
175
+ return cJSON_GetObjectItemCaseSensitive(root, funName.c_str());
176
176
  }
177
177
 
178
178
  // Get arguments of the operation, e.g. ["A1R", "A0", "A2"]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svf-tools",
3
- "version": "1.0.488",
3
+ "version": "1.0.491",
4
4
  "description": "* <b>[TypeClone](https://github.com/SVF-tools/SVF/wiki/TypeClone) published in our [ECOOP paper](https://yuleisui.github.io/publications/ecoop20.pdf) is now available in SVF </b> * <b>SVF now uses a single script for its build. Just type [`source ./build.sh`](https://github.com/SVF-tools/SVF/blob/master/build.sh) in your terminal, that's it!</b> * <b>SVF now supports LLVM-10.0.0! </b> * <b>We thank [bsauce](https://github.com/bsauce) for writing a user manual of SVF ([link1](https://www.jianshu.com/p/068a08ec749c) and [link2](https://www.jianshu.com/p/777c30d4240e)) in Chinese </b> * <b>SVF now supports LLVM-9.0.0 (Thank [Byoungyoung Lee](https://github.com/SVF-tools/SVF/issues/142) for his help!). </b> * <b>SVF now supports a set of [field-sensitive pointer analyses](https://yuleisui.github.io/publications/sas2019a.pdf). </b> * <b>[Use SVF as an external lib](https://github.com/SVF-tools/SVF/wiki/Using-SVF-as-a-lib-in-your-own-tool) for your own project (Contributed by [Hongxu Chen](https://github.com/HongxuChen)). </b> * <b>SVF now supports LLVM-7.0.0. </b> * <b>SVF now supports Docker. [Try SVF in Docker](https://github.com/SVF-tools/SVF/wiki/Try-SVF-in-Docker)! </b> * <b>SVF now supports [LLVM-6.0.0](https://github.com/svf-tools/SVF/pull/38) (Contributed by [Jack Anthony](https://github.com/jackanth)). </b> * <b>SVF now supports [LLVM-4.0.0](https://github.com/svf-tools/SVF/pull/23) (Contributed by Jared Carlson. Thank [Jared](https://github.com/jcarlson23) and [Will](https://github.com/dtzWill) for their in-depth [discussions](https://github.com/svf-tools/SVF/pull/18) about updating SVF!) </b> * <b>SVF now supports analysis for C++ programs.</b> <br />",
5
5
  "main": "index.js",
6
6
  "scripts": {