File tree Expand file tree Collapse file tree 1 file changed +6
-12
lines changed
Expand file tree Collapse file tree 1 file changed +6
-12
lines changed Original file line number Diff line number Diff line change @@ -53,14 +53,11 @@ namespace detail // NOLINT
5353template <typename Tag>
5454inline bool can_cast_code_impl (const exprt &expr, const Tag &tag)
5555{
56- try
56+ if ( const auto ptr = expr_try_dynamic_cast<codet>(expr))
5757 {
58- return expr_dynamic_cast<codet>(expr).get_statement ()==tag;
59- }
60- catch (const std::bad_cast &)
61- {
62- return false ;
58+ return ptr->get_statement () == tag;
6359 }
60+ return false ;
6461}
6562
6663} // namespace detail
@@ -1244,14 +1241,11 @@ namespace detail // NOLINT
12441241template <typename Tag>
12451242inline bool can_cast_side_effect_expr_impl (const exprt &expr, const Tag &tag)
12461243{
1247- try
1248- {
1249- return expr_dynamic_cast<side_effect_exprt>(expr).get_statement ()==tag;
1250- }
1251- catch (const std::bad_cast &)
1244+ if (const auto ptr = expr_try_dynamic_cast<side_effect_exprt>(expr))
12521245 {
1253- return false ;
1246+ return ptr-> get_statement () == tag ;
12541247 }
1248+ return false ;
12551249}
12561250
12571251} // namespace detail
You can’t perform that action at this time.
0 commit comments