aboutsummaryrefslogtreecommitdiff
path: root/include/armnn/utility/PolymorphicDowncast.hpp
AgeCommit message (Collapse)Author
2021-07-01Fix undefined behaviour in PolymorphicDowncastMatthew Bentham
In the assertion part of PolymorphicDowncast (and PolymorphicPointerDowncast) there was an unnecessary static_cast of the source pointer to the destination type. This is unnecessary because the implicit conversion of the result pointer back to the base type is sufficient to check for correctness of the downcast, and potentially harmful because if the downcast is actually incorrect the behaviour of static_cast is undefined (not actually known to be a problem in any tested implementation). Fixes warnings detected by ubsan. Signed-off-by: Matthew Bentham <matthew.bentham@arm.com> Change-Id: I9126288cbb06564009f94e57f6ca4688fc3b53c4
2020-04-10IVGCVSW-4483 Introduce PolymorphicPointerDowncastJan Eilers
* as replacement for boost::polymorphic_pointer_downcast * added PolymorphicPointerDowncast * added related unit test * added description to PolymorphicDowncast Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I47e94344c1c21941865549a5632cfb7cad804d35
2020-04-10IVGCVSW-4483 Remove boost::polymorphic_downcastJan Eilers
* exchange boost::polymorphic_downcast with armnn::PolymorphicDowncast * remove unnecessary includes of boost::polymorphic_downcast Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Ie603fb82860fe05fee547dc78073230cc62b2e1f
2020-03-09IVGCVSW-4483 Introduce polymorphic_downcast implementationDerek Lamberti
Change-Id: I958dd719162337eb5c7e71f4ac49dd5784564b1a Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>