|
71 | 71 | #include <analyses/ai.h> |
72 | 72 | #include <analyses/variable-sensitivity/abstract_enviroment.h> |
73 | 73 |
|
| 74 | +class variable_sensitivity_object_factoryt; |
| 75 | +using variable_sensitivity_object_factory_ptrt = |
| 76 | +std::shared_ptr<variable_sensitivity_object_factoryt>; |
| 77 | + |
74 | 78 | class variable_sensitivity_domaint : public ai_domain_baset |
75 | 79 | { |
76 | 80 | public: |
| 81 | + variable_sensitivity_domaint() { } |
| 82 | + |
| 83 | + explicit variable_sensitivity_domaint( |
| 84 | + variable_sensitivity_object_factory_ptrt _object_factory) { |
| 85 | + } |
| 86 | + |
77 | 87 | /// Compute the abstract transformer for a single instruction |
78 | 88 | /// |
79 | 89 | /// \param function_from: the name of the function containing from |
@@ -212,21 +222,24 @@ class variable_sensitivity_domaint : public ai_domain_baset |
212 | 222 | #endif |
213 | 223 | }; |
214 | 224 |
|
215 | | -class variable_sensitivity_object_factoryt; |
216 | | -using variable_sensitivity_object_factory_ptrt = |
217 | | - std::shared_ptr<variable_sensitivity_object_factoryt>; |
218 | | - |
219 | 225 | class variable_sensitivity_domain_factoryt |
220 | 226 | : public ai_domain_factory_default_constructort<variable_sensitivity_domaint> |
221 | 227 | { |
222 | 228 | public: |
223 | 229 | explicit variable_sensitivity_domain_factoryt( |
224 | | - variable_sensitivity_object_factory_ptrt object_factory |
225 | | - ) : vs_object_factory(object_factory) { |
| 230 | + variable_sensitivity_object_factory_ptrt _object_factory) |
| 231 | + : object_factory(_object_factory) { |
| 232 | + } |
| 233 | + |
| 234 | + std::unique_ptr<statet> make(locationt l) const override |
| 235 | + { |
| 236 | + auto d = util_make_unique<variable_sensitivity_domaint>(object_factory); |
| 237 | + CHECK_RETURN(d->is_bottom()); |
| 238 | + return std::unique_ptr<statet>(d.release()); |
226 | 239 | } |
227 | 240 |
|
228 | 241 | private: |
229 | | - variable_sensitivity_object_factory_ptrt vs_object_factory; |
| 242 | + variable_sensitivity_object_factory_ptrt object_factory; |
230 | 243 | }; |
231 | 244 |
|
232 | 245 | #ifdef ENABLE_STATS |
|
0 commit comments