From 5dabcbb944b602a0c5889245b8fefec115fa186e Mon Sep 17 00:00:00 2001 From: Thomas Krijnen Date: Thu, 22 Jun 2023 10:30:42 +0200 Subject: [PATCH] #2805 Use dynamic cast for generalize() due to virtual inheritance of selects --- src/ifcparse/aggregate_of_instance.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ifcparse/aggregate_of_instance.h b/src/ifcparse/aggregate_of_instance.h index db09a2bb44..f304e67351 100644 --- a/src/ifcparse/aggregate_of_instance.h +++ b/src/ifcparse/aggregate_of_instance.h @@ -67,7 +67,7 @@ public: unsigned int size() const { return (unsigned int)ls.size(); } aggregate_of_instance::ptr generalize() { aggregate_of_instance::ptr r(new aggregate_of_instance()); - for (it i = begin(); i != end(); ++i) r->push(*i); + for (it i = begin(); i != end(); ++i) r->push((*i)->as()); return r; } bool contains(T* t) const { return std::find(ls.begin(), ls.end(), t) != ls.end(); }