https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110578

            Bug ID: 110578
           Summary: Support dynamic_cast within the analyzer
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: analyzer
          Assignee: dmalcolm at gcc dot gnu.org
          Reporter: vultkayn at gcc dot gnu.org
  Target Milestone: ---

Created attachment 55491
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=55491&action=edit
First draft of a test case for dynamic_cast

In the attached file you will find a first draft of test cases toward
supporting dynamic_cast in the analyzer. We [the analyzer] have already gained
RTTI capabilities thanks to PR97114, so supporting dynamic_cast no longer feels
that far away.
Test cases currently failing have been marked 'xfail'.

I didn't add any test case about dynamic_cast failure given reference to types,
but rather stuck to pointers, since we don't support exceptions whatsoever.

  "If the cast fails and target-type is a reference type, it throws an
exception
   that matches a handler of type std::bad_cast."

  https://en.cppreference.com/w/cpp/language/dynamic_cast

What are your thoughts on these tests ? Do they feel complete enough for a
first implementation
of dynamic_cast into the analyzer ?

Reply via email to