svf-lib 1.0.2587 → 1.0.2589

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.
@@ -48,12 +48,19 @@ public:
48
48
  */
49
49
  enum ExtAPIType { UNCLASSIFIED, MEMCPY, MEMSET, STRCPY, STRCAT };
50
50
 
51
+ // Only AbstractInterpretation may construct the single owned AbsExtAPI
52
+ // instance (reachable through its private getUtils()). Keeping the
53
+ // constructor private prevents external callers from creating their own
54
+ // AbsExtAPI and invoking handleExtAPI()/handleMemcpy()/... directly.
55
+ friend class AbstractInterpretation;
56
+ private:
51
57
  /**
52
58
  * @brief Constructor for AbsExtAPI.
53
59
  * @param ae Reference to the AbstractInterpretation instance.
54
60
  */
55
61
  AbsExtAPI(AbstractInterpretation* ae);
56
62
 
63
+ public:
57
64
  /**
58
65
  * @brief Initializes the external function map.
59
66
  */
@@ -137,7 +137,9 @@ static inline Type* getPtrElementType(const PointerType* pty)
137
137
  assert(!pty->isOpaque() && "Opaque Pointer is used, please recompile the source adding '-Xclang -no-opaque-pointers'");
138
138
  return pty->getNonOpaquePointerElementType();
139
139
  #else
140
+ (void)pty; // Suppress warning of unused variable under release build
140
141
  assert(false && "llvm version 17+ only support opaque pointers!");
142
+ return nullptr;
141
143
  #endif
142
144
  }
143
145
 
Binary file
Binary file
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svf-lib",
3
- "version": "1.0.2587",
3
+ "version": "1.0.2589",
4
4
  "description": "SVF's npm support",
5
5
  "main": "index.js",
6
6
  "scripts": {