Skip to content

Commit 3b220ec

Browse files
committed
Pass object_factory into variable_sensitivity_domain
Add temporary default constructor until we can sort out derived classes
1 parent 3c44b0c commit 3b220ec

File tree

1 file changed

+20
-7
lines changed

1 file changed

+20
-7
lines changed

src/analyses/variable-sensitivity/variable_sensitivity_domain.h

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -71,9 +71,19 @@
7171
#include <analyses/ai.h>
7272
#include <analyses/variable-sensitivity/abstract_enviroment.h>
7373

74+
class variable_sensitivity_object_factoryt;
75+
using variable_sensitivity_object_factory_ptrt =
76+
std::shared_ptr<variable_sensitivity_object_factoryt>;
77+
7478
class variable_sensitivity_domaint : public ai_domain_baset
7579
{
7680
public:
81+
variable_sensitivity_domaint() { }
82+
83+
explicit variable_sensitivity_domaint(
84+
variable_sensitivity_object_factory_ptrt _object_factory) {
85+
}
86+
7787
/// Compute the abstract transformer for a single instruction
7888
///
7989
/// \param function_from: the name of the function containing from
@@ -212,21 +222,24 @@ class variable_sensitivity_domaint : public ai_domain_baset
212222
#endif
213223
};
214224

215-
class variable_sensitivity_object_factoryt;
216-
using variable_sensitivity_object_factory_ptrt =
217-
std::shared_ptr<variable_sensitivity_object_factoryt>;
218-
219225
class variable_sensitivity_domain_factoryt
220226
: public ai_domain_factory_default_constructort<variable_sensitivity_domaint>
221227
{
222228
public:
223229
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());
226239
}
227240

228241
private:
229-
variable_sensitivity_object_factory_ptrt vs_object_factory;
242+
variable_sensitivity_object_factory_ptrt object_factory;
230243
};
231244

232245
#ifdef ENABLE_STATS

0 commit comments

Comments
 (0)